重複の可能性:
メンバーフィールド、構築の順序
このような2人のメンバーがいるクラスがある場合:
class A
{
int a;
int b;
A() {}
};
とが構築される順序は未定義ですか?ab
を使用する場合cl、コンストラクターを呼び出す順序に関係なく、メンバーは常にクラスで宣言されている順序で構築されます。この場合、コンストラクターを次のように定義したとしても、常にそうaなります。bA
A() : b(), a() {}
しかし、それは特定のコンパイラの動作にすぎないと思います。