Я новичок в C ++, и у меня проблема с инициализацией моего контейнера occ_stat_t
с использованием функции-члена CNetwork::CNetwork
.
Я думаю, что что-то не так в строке: occ_stat[0]( num_elements_ ) , occ_stat[1]( num_elements_ )
но я не знаю, как правильно написать это.
Я хотел бы узнать, как инициализировать мою структуру, которая в каждом occ_stat
, occupied_counter
будет содержать n
элементов и mean_life_time
будет присвоено значение 0
.
Буду признателен за любую помощь.
привет
#include <iostream>
#include <boost/multi_array.hpp>
#include <cstdint>
typedef boost::multi_array< uint32_t , 1> uint32_1d_t;
struct occ_stat_t {
occ_stat_t (uint32_t n ):
occupied_counter( boost::extents[n] ) {}
uint32_1d_t occupied_counter;
double mean_life_time;
};
class CNetwork {
public:
CNetwork ( uint32_t num_elements_ );
private:
occ_stat_t occ_stat[2];
};
CNetwork::CNetwork ( uint32_t num_elements_ )
: occ_stat[0]( num_elements_ ) , occ_stat[1]( num_elements_ )
{
// do something
}
int main( ) {
uint8_t foo = 5;
CNetwork Network(foo);
return 0;
}