次のクラス定義を考える:C++コンストラクタの暗黙のメンバー
class Foo {
private:
int a;
int b;
public:
Foo() :
a()
{}
};
私が正しくリコール、私はコンストラクタを除外した場合、a()
はint
のデフォルトコンストラクタを呼び出し、0に初期化されます、何が起こるかは未定義ですメンバー変数に追加します。しかし、この例ではb
はどうですか?私のgccのバージョンでは0に設定されているようですが、それは定義された動作ですか?
ご回答ありがとうございます。