【環境】Visual Studio.NET 2003/ WindowsXP Pro. 折角やったので自分のためにもネタにしやすい部分を記録として残しておきます。 RVO(Return Value Optimization)とは値渡しでオブジェクトを返す関数において関数内で生成され計算される一時オブジェクトを生成せずに、戻り値となる一時オブジェクトに直接を計算をしようという最適化です。これにより一時オブジェクトの生成を1つ減らすことができ汎用される関数においてはパフォーンマンスの向上が見込めます。と、書いても分かりづらいので例を出します。通例、加算演算子は次の様に定義されます。 const Complex operator +( const Complex &lhs, const Complex &rhs ){ //…(1) Complex temp(lhs); lhs += rhs; re