構築時に初期化する必要がある const メンバーを含むクラスの配列を初期化したいと考えています。
#include <iostream>
class A
{
private:
const int var_;
public:
A(const int var) : var_(var){};
int getVar(){return var_;}
};
class B
{
private:
A tab[2];
public:
B() : tab{2,5} {}; // The trick should be here, I think !
int getA(int index) { return tab[index].getVar();}
};
int main(void)
{
B b; // constraint : Dynamic allocation not allowed
std::cout << b.getA(0) << std::endl;
return 0;
}
クラス B のコンストラクターが正しくないため、このコードはコンパイルされません。助けてくれてありがとう、ニコラス