GoTo 문

프로시저의 지정된 줄에 무조건 분기합니다.

문법

GoTo line  

부분

line
필수 사항입니다. 모든 줄 레이블입니다.

비고

문은 GoTo 표시되는 프로시저의 줄로만 분기할 수 있습니다. 줄에 참조할 수 있는 줄 레이블이 GoTo 있어야 합니다. 자세한 내용은 방법: 레이블 문을 참조하세요.

비고

GoTo 문을 사용하면 코드를 읽고 유지 관리하기가 어려울 수 있습니다. 가능하면 컨트롤 구조를 대신 사용합니다. 자세한 내용은 제어 흐름을 참조하세요.

문을 사용하여 GoTo 외부에서 분기할 수 없습니다.End SyncLockFor EachCatchNextNextSyncLockTryFor...Finally, With...End With, 또는 UsingEnd Using 내부의 레이블에 생성.

분기 및 시공 시도

내 ...TryCatch...Finally 생성, 다음 규칙은 문을 사용하여 분기에 GoTo 적용됩니다.

차단 또는 지역 외부에서 분기 내부에서 분기
Try 블록 동일한 생성 1의 블록에서 Catch 만 전체 건설 외부에만
Catch 블록 허용되지 않습니다. 전체 시공 외부 또는 Try 동일한 시공의 블록 에만 1
Finally 블록 허용되지 않습니다. 허용되지 않습니다.

1 하나 Try인 경우 ...Catch...Finally 생성은 다른 Catch 블록 내에 중첩되고 블록은 자체 중첩 수준에서 블록으로 Try 분기할 수 있지만 다른 Try 블록에는 분기할 수 없습니다. 중첩 ...TryCatch...Finally 생성은 중첩된 생성의 또는 Catch 블록에 완전히 Try 포함되어야 합니다.

다음 그림에서는 한 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

참고하십시오