C / C ++時代に戻って、「無限ループ」を次のようにコーディングします。
while (true)
とは対照的に、私はより自然に感じ、私にはより明白に見えた
for (;;)
1980年代後半のPC lintとの出会いとその後のベストプラクティスの議論は、私がこの習慣を破った。それ以来、for
制御ステートメントを使用してループをコーディングしました。今日、久しぶりに、そしておそらくC#開発者として無限ループが初めて必要になったとき、私は同じ状況に直面しています。それらの1つは正しく、もう1つは正しくありませんか?
while(true)
.条件が必要です。for(;;)
したがって、無条件に繰り返す無限ループのより適切な表現です。2.古い最適化されていないコンパイラは(true)
、ループしたとおりに実際にを評価した可能性があります。3. Cは、テレタイプ、300ボー端末、および1文字の変数名の時代のミニマリスト言語です。すべてのキーストロークがカウントされる環境では、for(;;)
はに比べてかなり短いですwhile(true)
。