Udostępnij za pośrednictwem


Instrukcja GoTo

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 Jak: sprawozdania etykiety (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 języku 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 konstrukcjach Try

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

Zrobić...Instrukcji pętli (Visual Basic)

Dla...Następna instrukcja (Visual Basic)

Dla każdego...Następna instrukcja (Visual Basic)

Jeżeli...Następnie...Instrukcja else (Visual Basic)

Wybierz...Instrukcja Case (Visual Basic)

Spróbuj...Catch...Instrukcja finally (Visual Basic)

While...Zakończenie podczas instrukcji (Visual Basic)

Z...Zakończyć instrukcją (Visual Basic)