C++ で次のループを考えてみましょう。ここで、A はベクトルまたは を使用する他のコンテナー.size()
です。
for(int n=0; n < A.size(); ++n)
cout << A[n];
以下のループと同等だと思います(少なくともこの場合、完全に同等ではない場合、理由を理解するのを手伝ってもらえますか?その反例が見つかりません)
for(int n=-1; ++n < A.size(); )
cout << A[n];
最初のループを使用する方が 2 番目のループよりも優れていますか? どこでも最初のループを使用している人を見かけますが、2 番目のループは見たことがありません。2番目の例のように誰もこれをしないのはなぜですか? これを行わないことへの反対の兆候はありますか? どちらの場合も、n
コードの 2 行目を実行するときの値は同じであり、ループを終了するときも同じ値になります。2 番目のループで問題が発生する可能性はありますか?
私にとっては、2 番目の方がさらに単純に思えます。