У меня есть класс, в котором я хочу создать цепочку битов из библиотеки boost как публичного члена этого класса.Но я получаю много разных ошибок, которые я не понимаю и хочу решить.Следующий код компилируется без ошибок.Я знаю, что биты не случайны, но это пока не имеет значения.
#include <boost/dynamic_bitset.hpp>
class individual{
public:
individual(uint32_t bitStringLength):
bitStringLength_(bitStringLength){}
void createRandomIndividual(){
boost::dynamic_bitset<> gene_(bitStringLength_);
return;
}
private:
uint32_t bitStringLength_;
};
Но теперь, если я изменю свой код на
class individual{
public:
individual(uint32_t bitStringLength):
bitStringLength_(bitStringLength){}
boost::dynamic_bitset<> gene_(bitStringLength_);
private:
uint32_t bitStringLength_;
};
, мой код не будет компилироваться иЯ получаю ошибку:
‘bitStringLength_’ has not been declared boost::dynamic_bitset<> gene_(bitStringLength_);
Я не понимаю, почему мой код дает мне эту ошибку.Почему я не могу создать свою цепочку битов таким образом?