より効率的な C++ コードを記述できるようにする C++0x の改善点の 1 つは、unique_ptr スマート ポインターです (残念ながら、memmove() のような操作を介して移動することはできません: 提案はドラフトに含まれていませんでした)。
今後の標準でのその他のパフォーマンスの改善点は何ですか? 次のコードを例にとります。
vector<char *> v(10,"astring");
string concat = accumulate(v.begin(),v.end(), string(""));
このコードは、ベクトルvに含まれるすべての文字列を連結します。このきちんとしたコードの問題は、accumulate() がコピーを行い、参照を使用しないことです。また、プラス演算子が呼び出されるたびに string() が再割り当てされます。したがって、このコードは、適切に最適化された類似の C コードに比べてパフォーマンスが低下します。
C++0x は問題を解決するためのツールを提供していますか?