我试图用Eigen库初始化一个6x4矩阵,如下所示;Eigen中的初始化矩阵
MatrixXf DH(6,4);
在我的班级定义。但这会导致错误
Expected parameter declarator
根据Eigen tutorial我所做的是正确的。有什么想法吗?
感谢
我试图用Eigen库初始化一个6x4矩阵,如下所示;Eigen中的初始化矩阵
MatrixXf DH(6,4);
在我的班级定义。但这会导致错误
Expected parameter declarator
根据Eigen tutorial我所做的是正确的。有什么想法吗?
感谢
我假设你有这样的:
class Test {
MatrixXf DH(6, 4);
public:
Test() {
}
};
的(6, 4)
意味着你调用构造函数。但是你不能在参数声明中调用非静态函数。这是参数列表的用途:
class Test {
MatrixXf DH;
public:
Test() : DH(6, 4) {
}
};
大多数情况下,声明会被混淆为函数。
尝试初始化类的构造函数初始化列表中的矩阵,因为在构造函数内部初始化矩阵是不可能的,除非它是一个指针,并且您为内部的DH分配内存。
public:
YourClass() : DH(6, 4)
{
}
谢谢,它的工作原理。 – Vino
谢谢,它的工作原理。 – Vino