在Armadillo线性代数库中有没有办法在矩阵内部使用用户定义的标量类型?
即使int64_t
类型也无效。
这个简单的声明arma::Mat<int64_t> mat;
会产生编译错误:
armadillo_bits \ arma_static_check.hpp(23):错误C2118:否定 下标armadillo_bits \ arma_static_check.hpp(21):编译时 类模板成员函数&#39; void ARMA :: arma_type_check_cxx1998 ::申请(无效)&#39; armadillo_bits \ mat_meat.hpp(34):参见函数模板的引用 实例化&#39; void arma :: arma_type_check_cxx1998 :: apply(void)&#39; 正在编译armadillo_bits \ mat_meat.hpp(34):参见参考 类模板实例化&#39; arma :: arma_type_check_cxx1998&#39; 正在编译armadillo_bits \ mat_meat.hpp(17):编译类时 模板成员函数&#39; arma :: Mat :: ~Mat(void)&#39; main.cpp(156):参见函数模板实例化 &#39; ARMA ::垫::〜垫(无效)&#39;正在编译main.cpp(156):见 参考类模板实例化&#39; arma :: Mat&#39;存在 编译
我需要具有这种自定义类型的矩阵,不是用于数学运算,而是仅用于插入行/列操作的方便的2d数组,并且我不想仅为这些操作链接另一个库。犰狳已经在我的项目中使用过了。