Return-Anweisung (Visual Basic)
Gibt die Steuerung an den Code zurück, mit dem eine der Prozeduren Function, Sub, Get, Set oder Operator aufgerufen wurde.
Return
-or-
Return expression
Bestandteil
- expression
In den Prozeduren Function, Get oder Operator erforderlich. Ausdruck, der den Wert darstellt, der an den aufrufenden Code zurückgegeben werden soll.
Hinweise
In einer Sub-Prozedur oder einer Set-Prozedur entspricht die Return-Anweisung einer Exit Sub-Anweisung oder einer Exit Property-Anweisung, und expression muss nicht angegeben werden.
In den Prozeduren Function, Get oder Operator muss die Return-Anweisung expression enthalten, und expression muss einen Datentyp ergeben, der in den Rückgabetyp der Prozedur konvertiert werden kann. In einer Function-Prozedur oder einer Get-Prozedur können Sie auch stattdessen dem Prozedurnamen einen Ausdruck zuweisen, der als Rückgabewert fungiert, und anschließend eine Exit Function-Anweisung oder eine Exit Property-Anweisung ausführen. In einer Operator-Prozedur müssen Sie Return expression verwenden.
Sie können in eine Prozedur so viele Return-Anweisungen wie erforderlich einfügen.
Tipp
Der Code in einem Finally-Block wird ausgeführt, nachdem eine Return-Anweisung in einem Try-Block oder einem Catch-Block erreicht wurde, jedoch vor dem Ausführen der Return-Anweisung. In dieser Situation wird eine Return-Anweisung im Finally-Block vor der anfänglichen Return-Anweisung ausgeführt. Daraus folgt ein anderer Rückgabewert. Um diese möglicherweise verwirrende Situation zu vermeiden, sollten Sie möglichst keine Return-Anweisungen in Finally-Blöcken verwenden.
Beispiel
Im folgenden Beispiel kehrt die Prozedur mehrmals mit der Return-Anweisung zum aufrufenden Code zurück, wenn keine weiteren Aufgaben auszuführen sind.
Public Function getAgePhrase(ByVal age As Integer) As String
If age > 60 Then Return "Senior"
If age > 40 Then Return "Middle-aged"
If age > 20 Then Return "Adult"
If age > 12 Then Return "Teen-aged"
If age > 4 Then Return "School-aged"
If age > 1 Then Return "Toddler"
Return "Infant"
End Function