方法 : 制御構造から制御を移す

更新 : 2007 年 11 月

Exit ステートメント (Visual Basic) を使用すると、制御構造から直接抜け出ることができます。Exit は、直ちに実行を制御構造の最後のステートメントの次のステートメントに移します。Exit ステートメントの構文では、終了する制御構造の種類を指定します。次のような Exit ステートメントが可能です。

  • Exit Select

  • Exit Try

  • Exit While

  • Exit Do

  • Exit For

Exit ステートメントは、これがサポートされている制御構造内で、必要に応じて何度でも指定できます。Exit は、その制御構造で必要な処理がすべて完了し、これ以上ステートメントを実行する必要がない場合に便利です。

**Exit をサポートしない制御構造。**If、Using、および With ブロックでは、Exit ステートメントを使用して制御を移すことはできません。そのような結果を得るには、ブロックの End ステートメントにステートメント ラベルを付け、GoTo ステートメントを使用して制御を移します。ステートメント ラベルの詳細については、「方法 : ステートメントへのラベル付け」を参照してください。

使用例

入れ子になった制御構造の中で Exit ステートメントを使用すると、Exit ステートメントで指定した種類の最も内側の構造の最後に続くステートメントに制御が渡されます。次に例を示します。

Public Sub invertElements(ByRef a(,) As Double)
    For i As Integer = 0 To UBound(a, 1)
        For j As Integer = 0 To UBound(a, 2)
            If a(i, j) = 0 Then
                ' Cannot complete this row; resume outer loop.
                Exit For
            Else
                a(i, j) = 1.0 / a(i, j)
            End If
        Next j
        ' Control comes here directly from the Exit For statement.
    Next i
End Sub

上の例では、Exit For ステートメントが内側の For ループの中に配置されているため、このループに続くステートメントに制御が渡され、外側の For ループが実行されます。

参照

処理手順

方法 : ステートメントへのラベル付け

概念

条件判断構造

ループ構造

その他の制御構造

入れ子になった制御構造

参照

Exit ステートメント (Visual Basic)

GoTo ステートメント

その他の技術情報

Visual Basic における制御フロー