std ::将数据移出Eigen :: Matrix

时间:2019-02-11 22:53:09

标签: c++ eigen

是否可以对动态大小的Eigen :: Matrix内的数据进行std :: move或道德上等效的处理?我想将数据移出以便在自己的API中使用。

1 个答案:

答案 0 :(得分:2)

由于您没有明确说明实际要做的事情,因此可以得到一个更通用的答案:

,没有访问Eigen内部信息的方法就无法将数据移出Eigen::Matrix(例如,如果您继承自Eigen::Matrix,则可以访问所有内部数据)。我不会详细说明如何执行此操作,因为如果Eigen的内部发生变化,这可能随时中断。

通常有两种与不同的API交互的“正确”方式(或这些方式的组合):

  1. 使用Eigen对象进行数据存储,并使用.data()函数对内部数据进行读写访问。
  2. 使用您自己的API进行数据存储,并使用Eigen::Map从Eigen一侧访问数据:https://eigen.tuxfamily.org/dox/group__TutorialMapClass.html