掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ループを抜けるには? (ID:114702)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
》 DANさん >> For i As Integer = 0 To i + 1 > VB4,5,6しか使った事ないけど、 > この書き方ってありなんですか? この構文は、.NET 1.1 (VB.NET 2003)以上にて利用可能です。 この方法では、iという変数は「ループ内でのみ用いられる変数」として 宣言されます。なお、この構文は For Each ループでも使用可能です。 》 Maxさん > Do While 1 > --- 処理 --- > Loop それだと、「Option Strict OnモードのVB.NET」だと、エラーになります。 正しくは、 Do While True '処理 Loop ですね。 # 「VB6以下」や、「Option Strict OffモードのVB.NET」であれば、 # 「Do While 1」でも一応は動作しますが、True の方が適切でしょう。 なお、無限ループとしては、 Do '処理 Loop と書くだけでもOKです。 > VB6ならCtrl+Breakで止まりますがVB.Netではどうなんでしょう? 中断機能はありますが、キーボードの割り当ては固定ではなく、変更可能です。 Visual Studio.NETの既定の設定では、Ctrl+Alt+Breakですが、 キー割り当てをVB6モードにしておけば、Ctrl+Breakになりますし、 あるいは、自分で決めたキー設定にする事もできます。 》 マグさん > まず、最初に初期値として、iに0が入ります。 > そして、抜ける条件として、1の場合ということになります。 > 次に、iが1になったときには、抜ける条件が2ということになります。 いえ、そうではありません。 Visual Basic の For ループに指定する『終了値』は、ループの開始時に決定されます。 つまり、 For counterValue = 0 To counterValue + 1 '処理 Next という処理は、Do〜Loopでいえば、 counterValue = 0 Do Until counterValue < counterValue + 1 '処理 counterValue += 1 Loop のように処理されるわけではなく、 counterValue = 0 endValue = counterValue + 1 Do Until counterValue < endValue '処理 counterValue += 1 Loop のように処理される事になります。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.