在 matlab 中,我可以使用 A(1:5,2:4) 访问矩阵中 1-5 行和 2-4 列的元素。在c++ eigen库中,我如何访问matlab中的部分元素?
最佳答案
使用 block
功能
#include <Eigen/Dense>
#include <iostream>
int main()
{
Eigen::MatrixXf m(4,4);
m << 1, 2, 3, 4,
5, 6, 7, 8,
9,10,11,12,
13,14,15,16;
std::cout << "m(2:3, 2:3) = \n";
std::cout << m.block<2,2>(1,1) << '\n';
}
返回
m(2:3, 2:3) =
6 7
10 11
您甚至可以用这种方式写入矩阵!请参阅上面的链接。
关于c++ - Eigen (C++): how can I visit part of matrix in?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65049138/