C++相談室 part36
■ このスレッドは過去ログ倉庫に格納されています
0610デフォルトの名無しさん
NGNGclass A
{
public:
A(int a) : a_(a), b_(a*2), c_(b_*2) {}
const inta_, b_;
const intc_;
};
だと意図通りに初期化がされるのですが、c_の宣言をa_, b_の前に持ってくるとc_の値がおかしくなります。
初期化順が、コンストラクタの : 以降(イニシャライザって言うんでしたっけ?)の初期化順に関係なく
宣言順に依存しているからだと思うのですが、これは規格で決められているのでしょうか?
■ このスレッドは過去ログ倉庫に格納されています