DataType& SparseStorage<DataType>::elem(int rr, int cc) { int oldsize = sparsity().nnz(); int ind = sparsityRef().add_nz(rr, cc); if (oldsize != sparsity().nnz()) nonzeros().insert(nonzeros().begin()+ind, DataType(0)); return nonzeros().at(ind); }
DataType& SparseStorage<DataType>::elem(int rr, int cc) { int oldsize = sparsity().size(); int ind = sparsityRef().getNZ(rr, cc); if (oldsize != sparsity().size()) data().insert(begin()+ind, DataType(0)); return at(ind); }