2012-02-29 12 views
0

C++ 11では、一時オブジェクトの不要なコピーを防ぐためにmove semanticsrvalue referencesを導入しました。私の質問は、改善を示す研究や論文がありますか?move semanticsはC++コードを使用していません。移動セマンティクスと参照値のパフォーマンスが向上しました

パフォーマンスを向上させると思う分野は、演算子のオーバーロードを使用する文字列処理と科学ライブラリです。しかし、すでにC++ 11の前に存在していたblitz++のような、高性能の科学ライブラリをすでに持っていませんでした。おそらく、move semanticsの使用によって、さらに最適化することができます。

どのアプリケーションがmove semanticsrvalue referencesで大きなメリットがあると思いますか?

答えて

1

C++標準ライブラリを使用するほとんどすべてのアプリケーションは、余分な処理をせずに移動セマンティクスの恩恵を受けます。例えば、vector<string>を見てください。移動セマンティクスは、新しい要素を追加し、ベクトルを劇的に小さくするコストを掛けます。

+0

-std = C++ 11フラグは、自動的に移動セマンティクスを持つSTLライブラリを選択しますか? – MetallicPriest

+0

このページによると:http://gcc.gnu.org/onlinedocs/libstdc++/manual/status.html#status.iso.2011 "この実装では、-std = gnu ++ 11または-std = C++ 11フラグを使用して言語とライブラリの機能を有効にする必要があります " –

関連する問題