Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Feltétel nélkül elágazik egy adott sorhoz egy eljárásban.
Szemantika
GoTo line
Rész
line
Szükséges. Bármilyen vonalcímke.
Megjegyzések
Az GoTo utasítás csak az eljárás azon soraira ágazhat el, amelyben megjelenik. A vonalnak olyan vonalcímkével kell rendelkeznie, amelyre GoTo hivatkozni lehet. További információért lásd: Útmutató: Kijelentések címkézése.
Megjegyzés:
GoTo az utasítások megnehezíthetik a kód olvasását és karbantartását. Amikor csak lehetséges, használjon inkább vezérlőstruktúrát. További információ: Control Flow.
Nem használhat utasítást GoTo a ..., ...Next, For Each...End SyncLockNext, SyncLock... kívülről Fortörténő elágaztatáshoz. TryCatch...Finally, With...End Withvagy Using...End Using egy címkére építkeznek.
Elágaztatás és konstrukciók kipróbálása
TryEgy ...Catch...Finally az elágaztatásra az alábbi szabályok vonatkoznak a GoTo nyilatkozattal.
| Blokk vagy régió | Elágaztatás kívülről | Elágazás belülről |
|---|---|---|
Try blokk |
Csak ugyanahhoz az építményhez tartozó blokkból Catch1 |
Csak a teljes építkezésen kívülre |
Catch blokk |
Soha nem engedélyezett | Csak az egész építményen kívülre, vagy ugyanannak az építménynek a Try blokkjára 1 |
Finally blokk |
Soha nem engedélyezett | Soha nem engedélyezett |
1 Ha egy Try...Catch...Finally az építés egy másikba van ágyazva, a Catch blokk a saját beágyazási szintjén ágazhat a Try blokkba, más blokkba Try azonban nem.
TryBeágyazott ...Catch...Finally az építést teljes egészében Try annak az építménynek vagy Catch blokknak a részén kell tárolni, amelyben beágyazva van.
Az alábbi ábrán az egyik Try építmény egymásba ágyazva látható. A két építmény blokkjai között különböző ágak érvényesek vagy érvénytelenek.
példa
Az alábbi példa az GoTo utasítással elágaztatást alkalmaz egy eljárás címkéinek sorba állításához.
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