我正在使用特征库来查找eigevalues
和eigenvectors
。从this网页获得以下定义 - :
const EigenvalueType & eigenvalues () const;
因此我使用的声明如
const Eigen::EigenvalueType &value = solver.eigenvalues()
包含以下文件:
#include "Eigen/Core"
#include "unsupported/Eigen/MatrixFunctions"
#include "Eigen/Eigenvalues"
我还检查了包含typedef
EigenValueType
的{{3}},并将其包含在声明中:
#include "Eigen/src/Eigenvalues/EigenSolver.h"
但是我仍然在编译时遇到以下错误。
error: ‘EigenvalueType’ in namespace ‘Eigen’ does not name a type
我不明白为什么它无法识别typedef。任何帮助表示赞赏。
答案 0 :(得分:2)
EigenvalueType是在类EigenSolver
内声明的typedef,你需要像
Eigen::EigenSolver<Eigen::MatrixXd>::EigenvalueType &value = solver.eigenvalues()
//^^^^^^^^^^^