使用数组或向量在Eigen中创建nd矩阵

时间:2019-06-29 11:11:43

标签: c++ arrays vector eigen smart-pointers

在C ++中使用Eigen时遇到问题。 Eigen不支持n维矩阵(除了不受支持的Tensor类,实际上这不是一个选择)。我需要的是动态分配的4级张量。现在,我有两个选择:

  1. 使用std::vector<std::vector<Eigen::MatrixXd>>>似乎是个坏主意,因为每个向量都会(在某个地方)分配自己的内存,因此效率不高。

    1. std::unique_ptr内使用动态分配的2d数组,因为我不想手动释放指针。实际上,这样做的缺点是,如今通常不应该使用包装在std:unique_ptr中的数组,因为对于动态分配的数组,我们有std::vector

有人可以给我提示正确的方向还是建议另一种方法?

0 个答案:

没有答案