本征矩阵分配需要很长时间——有解决办法吗?

Eigen matrix assignment taking a long time -- is there a solution?

我正在尝试通过以下方式在本征矩阵中创建相当大的矩阵(以存储点数据)

void MyFunction(Eigen::MatrixBase<Derived1>& X) {

    // Create empty matrix
    Eigen::Matrix3Xf Q = Eigen::Matrix3Xf::Zero(3, X.cols());

其中 X.cols 大约是 300,000。当我在调试模式下单步执行代码时,这会花费很长时间,因此很难测试我的代码。有没有办法更快地分配矩阵?我正在考虑使用 Eigen::Map class 将指针传递给浮点数组。非常感谢任何见解。

我犯了一个愚蠢的错误,在发布模式下调试我的代码 (vs2013)。如果您想单步执行代码,请确保您的设置处于调试状态。正如 ggael 所建议的那样,更改此设置可将所有内容加速到几毫秒。