我有这三个稀疏矩阵,按以下方式定义:
typedef SparseMatrix<double> SpMat;
int m_totSize = 256*256;
SpMat *L = new SpMat(m_totSize, m_totSize);
SpMat *A = new SpMat(m_totSize, m_totSize);
SpMat *W = new SpMat(m_totSize, m_totSize);
我用“setFromTriplets”设置L并将W设置为单位矩阵。
现在我想做:
*A = (*W)*(*L);
(虽然我知道它会让我回来)。
然后:
delete L;
delete A;
delete W;
即使我最后删除了矩阵(我也尝试过调整大小(0,0)),但由于这种乘法,我遇到了严重的内存泄漏。
有什么想法吗?
谢谢!
答案 0 :(得分:0)
似乎内存泄漏源自我的应用程序的另一部分,并且乘法是最后一根(在内存消耗方面)。但它并非源自那里......对不起。