13

http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2271.html によるとvector<uint64>::operator[]、「一般的に使用されている商用バージョンの STL」よりも EASTL の方が 2% から 70% 高速です。

商用バージョンの STL が比較を不公平にする範囲チェックを使用しない限り、このような単純な操作でこのような速度の違いが生じる可能性はありますか?

アップデート:

答えは、範囲チェックを使用するバージョンと比較して、EA エンジニアが単にごまかしているということです...

4

2 に答える 2

9

このドキュメントには、WindowsテストにVC ++ 2005を使用したことが記載されており、チェックされたイテレータデフォルトで有効になっています(はい、リリースビルドでも同様です。VC++ 2008でも同じです)。ビルドコマンドラインに追加しても、のパフォーマンスにoperator[]違いはないと思います。-D_SECURE_SCL=0

于 2011-04-21T10:25:58.700 に答える