2017-01-24から1日間の記事一覧

C++1z 値のコピー省略を保証

C++

関数の戻り値のコピーを発生させない手法として、RVO (Return Value Optimization) やNRVO (Named Return Value Optimization) といった最適化がありました。 // RVOの最適化が動作した場合 struct Foo {}; Foo foo() { return Foo(); } Foo x = foo(); // F…