如何:将控制转移到控制结构外

更新:2007 年 11 月

可以使用 Exit 语句 (Visual Basic) 直接从控制结构中退出。Exit 立即将执行转移到控制结构的最后一条语句之后的语句。Exit 语句的语法指定正在转移出哪种类型的控制结构。可能有下列版本的 Exit 语句:

  • Exit Select

  • Exit Try

  • Exit While

  • Exit Do

  • Exit For

Exit 语句可以在支持该语句的控制结构内部按照需要多次出现。当控制结构已经完成所有需完成的操作,不再需要运行任何其他语句时,Exit 非常有用。

不支持退出的控制结构。 不能使用 Exit 语句转移出 If、Using 或 With 块。若要转移出这类块,可以在块的 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)