1
有可能通过转让给Eigen::Map
转换为Matrix
:转换的本征:: TensorMap到本征::张量
vector<float> v = { 1, 2, 3, 4 };
auto m_map = Eigen::Map<Eigen::Matrix<float, 2, 2, Eigen::RowMajor>>(&v[0]);
Eigen::MatrixXf m = m_map;
cout << m << endl;
这将产生:
1 2
3 4
如果我试图做同样的事情与Tensor
:
vector<float> v = { 1, 2, 3, 4 };
auto mapped_t = Eigen::TensorMap<Eigen::Tensor<float, 2, Eigen::RowMajor>>(&v[0], 2, 2);
Eigen::Tensor<float, 2> t = mapped_t;
我只是得到编译器错误YOU_MADE_A_PROGRAMMING_MISTAKE
。有没有办法将TensorMap转换成张量?