我正在研究从MATLAB代码到C ++的程序翻译,我决定使用Armadillo C ++库。在我的C ++代码中,我使用typedef定义了一个struct类型,然后声明了arma::Col<myType>
,但是当我尝试编译时,由于Armadillo头文件中的ERROR___INCORRECT_OR_UNSUPPORTED_TYPE
错误,编译器给出了一个C2118错误“arma_static_check .hpp“引用之前描述的myType类型,当我在arma::Col
定义中使用它时。这是否意味着无法创建包含自定义类型的arma::Col
元素,或者我做错了什么?
答案 0 :(得分:0)
您可以使用field class 而不是Col类。
字段类可以存储任意用户类型。 Col类仅用于数值类型(Armadillo FAQ表示“Armadillo支持具有以下元素类型的矩阵:float,double,std :: complex,std :: complex,short,int,long和short,int,long“)的无符号版本。