Istruzione Exit (Visual Basic)

Esce da una routine o da un blocco e trasferisce immediatamente il controllo all'istruzione dopo la chiamata di routine o la definizione del blocco.

Sintassi

Exit { Do | For | Function | Property | Select | Sub | Try | While }

Rendiconti

Exit Do
Chiude immediatamente il ciclo Do in cui viene visualizzato. L'esecuzione continua con l'istruzione che segue l'istruzione Loop. Exit Do può essere usato solo all'interno di un ciclo Do. Se usato all'interno di cicli Do annidati, Exit Do esce dal ciclo più interno e trasferisce il controllo al livello superiore successivo di annidamento.

Exit For
Chiude immediatamente il ciclo For in cui viene visualizzato. L'esecuzione continua con l'istruzione che segue l'istruzione Next. Exit For può essere usato solo all'interno di un ciclo For...Next o For Each...Next. Se usato all'interno di cicli For annidati, Exit For esce dal ciclo più interno e trasferisce il controllo al livello superiore successivo di annidamento.

Exit Function
Chiude immediatamente la routine Function in cui viene visualizzato. L'esecuzione continua con l'istruzione che segue l'istruzione che ha chiamato la routine Function. Exit Function può essere usato solo all'interno di una routine Function.

Per specificare un valore restituito, è possibile assegnare il valore al nome della funzione in una riga prima dell'istruzione Exit Function. Per assegnare il valore restituito e uscire dalla funzione in un'unica istruzione, è invece possibile usare l'istruzione Return.

Exit Property
Chiude immediatamente la routine Property in cui viene visualizzato. L'esecuzione continua con l'istruzione che ha chiamato la routine Property, ovvero con l'istruzione che richiede o imposta il valore della proprietà. Exit Property può essere utilizzato solo all'interno della routine Get o Set di una proprietà.

Per specificare un valore restituito in una routine Get, è possibile assegnare il valore al nome della funzione in una riga prima dell'istruzione Exit Property. Per assegnare il valore restituito e uscire dalla routine Get in un'istruzione, è invece possibile usare l'istruzione Return.

In una routine Set l'istruzione Exit Property equivale all'istruzione Return.

Exit Select
Chiude immediatamente il blocco Select Case in cui viene visualizzato. L'esecuzione continua con l'istruzione che segue l'istruzione End Select. Exit Select può essere usato solo all'interno di un'istruzione Select Case.

Exit Sub
Chiude immediatamente la routine Sub in cui viene visualizzato. L'esecuzione continua con l'istruzione che segue l'istruzione che ha chiamato la routine Sub. Exit Sub può essere usato solo all'interno di una routine Sub.

In una routine Sub l'istruzione Exit Sub equivale all'istruzione Return.

Exit Try
Chiude immediatamente il blocco Try o Catch in cui viene visualizzato. L'esecuzione continua con il blocco Finally, se presente, o con l'istruzione che segue l'istruzione End Try in caso contrario. Exit Try può essere usato solo all'interno di un blocco Try o Catch e non all'interno di un blocco Finally.

Exit While
Chiude immediatamente il ciclo While in cui viene visualizzato. L'esecuzione continua con l'istruzione che segue l'istruzione End While. Exit While può essere usato solo all'interno di un ciclo While. Se usato all'interno di cicli While annidati, Exit While trasferisce il controllo al ciclo che è un livello annidato al di sopra del ciclo in cui si verifica Exit While.

Osservazioni:

Non confondere le istruzioni Exit con quelle End. Exit non definisce la fine di un'istruzione.

Esempio 1

Nell'esempio seguente la condizione del ciclo arresta il ciclo quando la variabile index è maggiore di 100. L'istruzione If nel ciclo, tuttavia, fa sì che l'istruzione Exit Do arresti il ciclo quando la variabile di indice è maggiore di 10.

Dim index As Integer = 0
Do While index <= 100
    If index > 10 Then
        Exit Do
    End If

    Debug.Write(index.ToString & " ")
    index += 1
Loop

Debug.WriteLine("")
' Output: 0 1 2 3 4 5 6 7 8 9 10 

Esempio 2

L'esempio seguente assegna il valore restituito al nome della funzione myFunction e quindi usa Exit Function per restituire dalla funzione:

Function MyFunction(ByVal j As Integer) As Double
    MyFunction = 3.87 * j
    Exit Function
End Function

Esempio 3

Nell'esempio seguente viene usata l'istruzione Return per assegnare il valore restituito e uscire dalla funzione:

Function MyFunction(ByVal j As Integer) As Double
    Return 3.87 * j
End Function

Vedi anche