我在 C++ 中有一些数学计算,我正在迁移到 Eigen。以前我手动滚动了我自己的double*
数组,也gsl_matrix
从 GNU 科学图书馆中使用过。
让我感到困惑的是 Eigen 的常见问题解答中的措辞。这是什么意思,是否有某种引用计数和自动内存分配正在进行?
我只需要确认这在 Eigen 中仍然有效:
// n and m are not known at compile-time
MatrixXd myMatrix(n, m);
MatrixXd *myMatrix2 = new MatrixXd(n, m);
myMatrix.resize(0,0); // destroyed by destructor once out-of-scope
myMatrix2->resize(0,0);
delete myMatrix2;
myMatrix2 = NULL; // deallocated properly