簡體   English   中英

eigen(c++):如何訪問矩陣的一部分?

[英]eigen(c++): how can I visit part of matrix in?

在 matlab 中,我可以使用 A(1:5,2:4) 訪問矩陣中 1-5 行和 2-4 列的元素。 在 c++ 特征庫中,我如何訪問 matlab 中的部分元素?

使用block function

#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

您甚至可以通過這種方式寫入矩陣。 請參閱上面的鏈接。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM