我试图了解如何在类中初始化犰狳矢量和矩阵。到目前为止,我编写的代码是:
class EcosystemCarbonStateType{
private:
arma::vec B;
arma::mat K;
public:
EcosystemCarbonStateType() : B(2), K(2,2)
{
B.fill(1);
K.fill(2.0);
}
void init();
};
实例化该类之后,我尝试运行init
方法,但是会产生奇怪的结果。
初始化看起来像这样
void EcosystemCarbonStateType::init(){
B(0) = 0.45;
B(1) = 0.55;
K(0, 0) = 0.00176;
K(1, 1) = 0.000100104;
}
如果我随后打印B
并且K
B没问题,而K
为空。我在构造函数上做错了吗?