Udostępnij za pośrednictwem


GoTo — Instrukcja

Oddziały bezwarunkowo do określonego wiersza w procedurze.

GoTo line

Część

  • line
    Wymagane.Wszelkie etykiety linii.

Uwagi

GoTo Instrukcji można rozgałęzić tylko wiersze w procedurze, w której pojawia się.Wiersz musi mieć etykietę linii GoTo może odnosić się do.Aby uzyskać więcej informacji, zobacz Porady: etykietowanie instrukcji (Visual Basic).

[!UWAGA]

GoToinstrukcje może utrudnić kodu do odczytu i utrzymania.W każdym przypadku, gdy jest to możliwe, należy użyć struktury kontroli.Aby uzyskać więcej informacji, zobacz Przepływ sterowania w Visual Basic.

Nie można użyć GoTo instrukcji do oddziału firmy z zewnątrz For...Next, For Each...Next, SyncLock...End SyncLock, Try...Catch...Finally, With...End With, or Using...End Using konstrukcji do etykiety wewnątrz.

Rozgałęzianie się i spróbuj konstrukcje

Within a Try...Catch...Finally budowy, następujące zasady stosuje się do tworzenia odgałęzień z GoTo instrukcji.

Blok lub regionu

Rozgałęzioną w z zewnątrz

Rozgałęzioną out od wewnątrz

Tryblok

Tylko z Catch bloku takiej samej konstrukcji 1

Tylko poza całego budowy

Catchblok

Nigdy nie są dozwolone

Tylko poza całego budowy lub do Try bloku takiej samej konstrukcji 1

Finallyblok

Nigdy nie są dozwolone

Nigdy nie są dozwolone

1 If one Try...Catch...Finally konstrukcji jest zagnieżdżony w innym, Catch bloku można Rozgałęzienie do Try bloku na swój własny poziom zagnieżdżenia, ale nie do wszelkich innych Try bloku.A nested Try...Catch...Finally konstrukcji muszą być zawarte w całkowicie w Try lub Catch bloku budowy, w którym jest zagnieżdżony.

Na następującej ilustracji pokazano jedną Try konstrukcji zagnieżdżona w innej.Różne oddziały wśród bloków dwie konstrukcje są oznaczone jako prawidłowe lub nieprawidłowe.

Prawidłowe i nieprawidłowe oddziałów w konstrukcji Try

Graficzny diagram rozgałęzień w konstrukcji spróbuj

Przykład

W poniższym przykładzie użyto GoTo instrukcji do gałęzi do etykiety linii w procedurze.

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

Zobacz też

Informacje

Do...Loop — Instrukcja (Visual Basic)

For...Next — Instrukcja (Visual Basic)

For Each...Next — Instrukcja (Visual Basic)

If...Then...Else — Instrukcja (Visual Basic)

Select...Case — Instrukcja (Visual Basic)

Try...Catch...Finally — Instrukcja (Visual Basic)

While...End While — Instrukcja (Visual Basic)

With...End With — Instrukcja (Visual Basic)