2
私はint型格納構造体があります。私はいつものコンストラクターがあることを期待している時点で、理解
foo bar = foo(foo(foo(42)));
:私は次のようんmainメソッドで
struct foo {
int value;
foo(int value) : value(value) {
std::cout << "value constr\n";
}
foo(foo const&) {
std::cout << "copy constr\n";
}
foo(foo&&) {
std::cout << "move constr\n";
}
};
をその引数が右辺値になるため、コンストラクタを何度も移動します。ただし、出力は "value constr"のみです。
なぜコンストラクタのコピーも移動も呼び出されず、この例で実際に何が起こるのですか?