class myObj
{
myObj() {};
}
myObj MakeObj()
{
return( myObj() );
}
main()
{
myObj o = MakeObj();
}
MakeObj関数では、objは値によって返されます。したがって、割り当てでは、作成されたオブジェクトがコピーされます。2つの操作があるようです。1つはオブジェクトを作成してMakeObjでそのフィールドを割り当てるためのもので、もう1つは戻り時にオブジェクトをコピーするためのものです。
これらのステップの1つは、コンパイラーによって最適化されていますか?
複雑なオブジェクトを作成して割り当てるための最速の方法は何ですか?