このページは奇妙なことを言っています:-
一時的なものは、プログラムが戻り値をオブジェクトにコピーしない場合にのみ作成され、例は次のとおりです。
UDT Func1(); // Declare a function that returns a user-defined type.
...
Func1(); // Call Func1, but discard return value.
// A temporary object is created to store the return
// value
しかし、私がやった場合:-
UDT obj=Fuct1;
次のように一時的なものも作成されるように思われます:-
Func()
ローカルオブジェクトを構築します。次に、このローカルオブジェクトは呼び出し元のスタック上でコピー構築され、temporary object
objのコピーコンストラクターの引数として使用されるを作成します。
私が間違っている?
これはコピーの省略と関係がありますか?