将 Eigen Vector/Matrix 中的元素转换为原始双精度类型
Cast an element in Eigen Vector/Matrix to a primitive double type
基本上我该怎么做
Eigen::RowVectorXd param(2);
param << 1.0, 2.0;
double last_element = param.tail(1); // error: no suitable conversion...
我知道我可以使用 .coeff()
但是在我的代码中一些向量正在调整大小,因此大小是先验未知的
像这样的东西行得通吗:
Eigen::RowVectorXd param(2);
param << 1.0, 2.0;
double last_element = param(param.size() - 1);
甚至更好,使用 Eigen 提供的 last
值:
double last_element = param(Eigen::last);
基本上我该怎么做
Eigen::RowVectorXd param(2);
param << 1.0, 2.0;
double last_element = param.tail(1); // error: no suitable conversion...
我知道我可以使用 .coeff()
但是在我的代码中一些向量正在调整大小,因此大小是先验未知的
像这样的东西行得通吗:
Eigen::RowVectorXd param(2);
param << 1.0, 2.0;
double last_element = param(param.size() - 1);
甚至更好,使用 Eigen 提供的 last
值:
double last_element = param(Eigen::last);