有什麼方法可以在Armadillo線性代數庫中使用用戶定義的標量類型內部矩陣? 即使int64_t
類型也不起作用。 這個簡單的聲明arma::Mat<int64_t> mat;
產生編譯錯誤:用戶定義的類型爲C++中的矩陣標量犰狳庫
armadillo_bits\arma_static_check.hpp(23): error C2118: negative subscript armadillo_bits\arma_static_check.hpp(21) : while compiling class template member function 'void arma::arma_type_check_cxx1998::apply(void)' armadillo_bits\mat_meat.hpp(34) : see reference to function template instantiation 'void arma::arma_type_check_cxx1998::apply(void)' being compiled armadillo_bits\mat_meat.hpp(34) : see reference to class template instantiation 'arma::arma_type_check_cxx1998' being compiled armadillo_bits\mat_meat.hpp(17) : while compiling class template member function 'arma::Mat::~Mat(void)' main.cpp(156) : see reference to function template instantiation 'arma::Mat::~Mat(void)' being compiled main.cpp(156) : see reference to class template instantiation 'arma::Mat' being compiled
我需要這樣的規矩矩陣型不是數學運算,但只是用於插入行/列操作方便二維數組,我不希望鏈接另一個庫只是爲了這些操作。犰狳已經在我的項目中使用了。
爲了使64個整數,使用一個C++ 11編譯器,或包括犰狳頭之前定義'ARMA_64BIT_WORD'。否則,手動編輯'include/armadillo_bits/config.hpp'。這些選項的解釋在[documentation](http://arma.sourceforge.net/docs.html#config_hpp)中列出。 – mtall 2015-02-05 15:05:02
謝謝,但如何使用用戶定義的類?像arma :: Mat mat; –
Yury
2015-02-05 15:11:15