我正在使用特征张量库,在我看来,shuffle() 方法需要一个对象 Eigen::array
在我的实现中,我有一个 std::list 需要传递给 shuffle (当然我只在运行时知道第二个 int 参数(等级)!)
最佳答案
不久前,Eigen 的 Tensor 模块与 C++03 兼容。这意味着 std::array
不可用。出于这个原因,张量模块定义了自己的 Eigen::array
实际上是 std::array
的 typedef 的类如果 C++11 可用。
文件unsupported/Eigen/CXX11/src/util/EmulateArray.h包含一些归结为(伪代码)的东西
#if C++11 not available
// Define a custom std::array like Eigen::array class
#else
template <typename T, std::size_t N> using array = std::array<T, N>;
#endif
Tensor 模块已放弃 C++03 兼容性,并且可能会删除此代码的部分内容。
关于c++ - 什么是 Eigen::array(不是 Eigen::Array),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63691234/