共用方式為


GoTo 語句

無條件地分支至程式中的指定行。

語法

GoTo line  

部分

line
必須的。 任何線條標籤。

備註

語句 GoTo 只能分支至出現在程式中的行。 該行必須有可以參考的線條標籤 GoTo 。 如需詳細資訊,請參閱 如何:標籤語句

備註

GoTo 語句會使程式代碼難以讀取和維護。 請盡可能改用控件結構。 如需詳細資訊,請參閱 控制流程

您無法使用 GoTo 語句從 For...Next, ..., For Each...NextSyncLock...End SyncLock ... TryCatch...FinallyWith...End WithUsing...End Using 建構到內部的標籤。

分支和嘗試建構

Try在 ...Catch...Finally建構,下列規則適用於語句的GoTo分支。

封鎖或區域 從外部分支 從內部分支
Try 區塊 只有來自 Catch 相同建構的區塊 1 只有到整個建築外部
Catch 區塊 絕對不允許 只到整個施工之外,或到 Try 同一個建築的街區 1
Finally 區塊 絕對不允許 絕對不允許

1 如果一個 Try...Catch...Finally 建構是巢狀在另一個內部,區塊 Catch 可以分支到 Try 區塊本身的巢狀層級,但不能進入任何其他 Try 區塊。 巢狀 Try...Catch...Finally 建構必須完全 Try 包含在其巢狀結構內的 或 Catch 區塊中。

下圖顯示一個巢狀在另一個 Try 結構內。 這兩個建構區塊之間的各種分支會表示為有效或無效。

Try 建構中分支的圖表

範例

下列範例會 GoTo 使用語句來分支至程式中的行標籤。

    Sub GoToStatementDemo()
        Dim number As Integer = 1
        Dim sampleString As String
        ' Evaluate number and branch to appropriate label.
        If number = 1 Then GoTo Line1 Else GoTo Line2
Line1:
        sampleString = "Number equals 1"
        GoTo LastLine
Line2:
        ' The following statement never gets executed because number = 1.
        sampleString = "Number equals 2"
LastLine:
        ' Write "Number equals 1" in the Debug window.
        Debug.WriteLine(sampleString)
    End Sub

另請參閱