每当我尝试为 Eigen 创建模板化函数时,都会收到如下错误:
错误 C2039:“选项”:不是“Eigen::MatrixBase”的成员
此错误来自以下函数
template<typename Derived1, typename Derived2>
void eig(const MatrixBase<Derived1> & A, MatrixBase<Derived2> & eigenvaluesBuff) {
EigenSolver<MatrixBase<Derived1>> es(A, false);
eigenvaluesBuff = es.eigenvalues().real().col(0);
}
矩阵 A 是由不同函数返回的 MatrixXd。任何想法我做错了什么?如果一个函数返回一个 MatrixXd,你能否不将该结果直接传递给 Eigen 中的模板函数?