【发布时间】:2017-10-18 17:25:29
【问题描述】:
如何将特征向量 mesh 复制到 C 数组 r?
double *r;
typedef Eigen::VectorXd RealVector;
Eigen::Map<RealVector>(r, 1, mesh.cols()) = mesh;
从 Eigen 给出一个断言
DenseBase::resize() does not actually allow to resize.
同样的消息来自任何一方
Eigen::Map<RealVector>(r, mesh.cols()) = mesh;
或
Eigen::Map<RealVector>(r, mesh.cols(), 1) = mesh;
我需要复制这些值,而不仅仅是映射。
【问题讨论】:
-
根据this answer,需要自己为
r分配空间。 -
我确实为
r分配了空间;只是没有在代码中显示那部分。但如果我不这样做,我会得到一个不同的错误,例如访问冲突。 -
mesh的大小是多少? IE。它只有 1 行吗?