今回は小ネタです。
終わりが分からない場合、無限ループで繰り返し実行しつつ内部から状態変化を取得するという方法があります。
記事を色々見ていくと無限ループの書き方も1つではありません。
今回は、よく見かける無限ループの書き方について触れます。
whileの場合
条件式が有効の間はループをし続けます。
docs.microsoft.com
そのため、下記の2つの方法で無限ループを再現することが出来ます。
- フラグで判定する
- breakでループを抜け出す
フラグで判定する
ループ前にあらかじめフラグを用意しておき、ループ内でフラグ管理します。
bool quit= false; while(! quit) { // 処理 quit = true; }
breakでループを抜け出す
条件式をtrue
にしておくことで、ループ内部でフラグ管理をしない方法です。
抜け出す場合は、break
を使用します。
while(true) { // 処理 break; }
forの場合
セミコロン(;
)を2つ並べる事でforでもループをさせる事が出来ます。
docs.microsoft.com
繰り返しから抜け出す場合はbreak
で抜け出します。
for( ; ; ) { // 処理 break; }
以上です。
大した話ではないですが、無限ループ自体を書く機会がここ最近無かったので復習もかねて載せてみました。
ソースを読むときにこのループ何だろうと思ったときに参考になるかもしれませんね。