atoi()のパフォーマンスを改善する
Andrei Alexandrescuの講義「Code :: Dive 2015 Conferenceの「速いコード」の講義でのアドバイスに従って、Atoi()に速い同等物を提供しようとしていますが、後方互換性を最大化しようとしています。
stringの解析パフォーマンスを改善するAtoi()を使用してレガシーコードがあります。入力の形式が保証されている場合、特殊な文字列 - > int解析ルーチンを作成するのは非常に簡単です。ただし、Atoi()に送信される文字列が外部クライアントから来る場合があるため、弦には開始された空白がないこと、または最後に非数字の文字が含まれていないことを便利に想定することはできません。
ATOI()関数は次のことを行います。
1つの特定のシステム/コンパイラ/コンパイラオプションの構成(完全な最適化)の結果を次に示します。
CPUタイムチャート:
経過時間チャート:
C ++リファレンス