Я пытаюсь понять, как инициализировать вектор и матрицу броненосца в классе. Код, который я написал до сих пор:
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
, однако получаются странные результаты.
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
пусто. Я что-то не так делаю с конструктором?