C++相談室 part85
■ このスレッドは過去ログ倉庫に格納されています
0652デフォルトの名無しさん
2010/10/29(金) 01:45:05Foo(int x) {}
private:
Foo &operator=(Foo&);
};
上記のクラスの宣言と初期化を同時に行うとき、
Foo x = 5;
のように書けますが、これは operator= の呼び出しではなく、
Foo x(5);
と書くのと同じ意味になるのだと思います。なぜなら、初期化後に改めて
x = 10;
と書いた場合はマッチする operator= がないのでコンパイルできないからです。
この「宣言と初期化を同時に行うときの=は特別」と言うことを規格で確認したいのですが、
どの項を見ればいいのでしょうか。
■ このスレッドは過去ログ倉庫に格納されています