膨大な数のデータを含むarrというベクトルがある場合、そのベクトルのすべての値を出力します。私が使用し、次のいずれかC++:arr.size()はループに適していますか?
int arr_size = arr.size();
for(int i=0; i<arr_size; ++i) {//print the values}
またはそれをこのように実装します。私の意見では
for(int i=0; i<arr.size(); ++i) {//print the values}
を、第1の実施の方法は、キャッシュへのベクターのサイズを取得し、それ故により速く状態を行います最初のミスの後。 2番目の実装はどうですか?それは遅いですか?条件を満たすたびにsize()メソッドが呼び出されますか?
編集:C++を使用しているとしましょう。
あなたが使用している言語は、このことが重要かどうかに影響を与える可能性があります。 – Mat
@Mat、コンパイラはどうですか? – nullpotent
@AljoshaBre:コンパイラ(とコンパイラオプション)は言語よりも重要です(明らかに悪いコンパイラや非常に洗練されたデバッグオプションがこれに影響します) – Mat