Function-Prozeduren (Visual Basic)

Eine Function-Prozedur ist eine Reihe von Visual Basic-Anweisungen, die von den Anweisungen Function und End Function eingeschlossen sind.Die Function-Prozedur führt eine Aufgabe aus und gibt die Steuerung dann an den Aufrufcode zurück.Wenn sie die Steuerung zurückgibt, gibt sie auch einen Wert an den Aufrufcode zurück.

Bei jedem Aufruf der Prozedur werden ihre Anweisungen ausgeführt. Die Ausführung wird mit der ersten ausführbaren Anweisung nach der Function-Anweisung begonnen und mit der ersten auftretenden End Function-, Exit Function- oder Return-Anweisung beendet.

Sie können eine Function-Prozedur in einem Modul, einer Klasse oder Struktur definieren.Standardmäßig sind Function-Prozeduren Public, d. h. sie können überall in der Anwendung aufgerufen werden, die Zugriff auf das Modul, die Klasse oder Struktur hat, in dem bzw. der die Prozedur definiert ist.

Function-Prozeduren können Argumente (z. B. Konstanten, Variablen oder Ausdrücke) verarbeiten, die durch den Aufrufcode an sie übergeben werden.

Deklarationssyntax

Die Syntax zur Deklaration einer Function-Prozedur lautet wie folgt:

[Modifiers] Function FunctionName [(ParameterList)] As ReturnType
    [Statements]
End Function

Mithilfe von Modifizierern werden die Zugriffsebene und Informationen zum Überladen, Überschreiben, Freigeben und Shadowing angegeben.Weitere Informationen hierzu finden Sie unter Function-Anweisung (Visual Basic).

Sie deklarieren alle Parameter auf die gleiche Weise wie Sub-Prozeduren (Visual Basic).

6xxtk8kx.collapse_all(de-de,VS.110).gifDatentyp

Ebenso wie Variablen weisen auch Function-Prozeduren einen Datentyp auf.Der Datentyp wird durch die As-Klausel in der Function-Anweisung festgelegt. Er bestimmt den Datentyp des Werts, den die Funktion an den Aufrufcode zurückgibt.Die folgenden Beispieldeklarationen verdeutlichen dies.

Function yesterday() As Date
End Function

Function findSqrt(ByVal radicand As Single) As Single
End Function

Weitere Informationen finden Sie im Abschnitt "Bestandteile" unter Function-Anweisung (Visual Basic).

Rückgabewerte

Der Wert, den eine Function Prozedur zurück an den aufrufenden Code sendet, wird als Rückgabewert aufgerufen.Die Prozedur gibt den Wert auf zwei Arten zurück:

  • Hier wird mit der Return-Anweisung der Rückgabewert angegeben, und die Steuerung wird sofort an das aufrufende Programm zurückgegeben.Dies wird anhand des folgenden Beispiels veranschaulicht:

    Function FunctionName [(ParameterList)] As ReturnType
        ' The following statement immediately transfers control back
        ' to the calling code and returns the value of Expression.
        Return Expression
    End Function
    
  • Sie weist ihrem eigenen Funktionsnamen in mindestens einer Anweisung der Prozedur einen Wert zu.Die Steuerung wird solange nicht an das aufrufende Programm zurückgegeben, bis eine Exit Function oder End Function ausgeführt wird.Dies wird anhand des folgenden Beispiels veranschaulicht:

    Function FunctionName [(ParameterList)] As ReturnType
        ‘ The following statement does not transfer control back to the calling code.
        FunctionName = Expression
        ' When control returns to the calling code, Expression is the return value.
    End Function
    

Der Vorteil beim Zuweisen des Rückgabewerts an den Funktionsnamen liegt darin, dass die Prozedur die Steuerung erst zurückgibt, wenn das Programm die Anweisung Exit Function oder End Function erreicht.Dadurch können Sie einen vorläufigen Wert zuweisen und diesen gegebenenfalls später korrigieren.

Weitere Informationen zum Zurückgeben von Werten, finden Sie unter Function-Anweisung (Visual Basic).Informationen zum Zurückgeben von Arrays, finden Sie unter Arrays in Visual Basic.

Aufrufsyntax

Zum Aufrufen einer Function-Prozedur geben Sie deren Namen und die Argumente entweder auf der rechten Seite einer Zuweisungsanweisung oder in einem Ausdruck an.Sie müssen Werte für alle nicht optionalen Argumente angeben und die Argumentliste in Klammern setzen.Wenn keine Argumente angegeben werden, können Sie die Klammern auch weglassen.

Die Syntax für den Aufruf einer Function-Prozedur lautet wie folgt:

l-Wert=functionname[(argumentlist)]

If ((functionname[(argumentlist)] / 3) <=Ausdruck) Then

Wenn Sie eine Function-Prozedur aufrufen, müssen Sie deren Rückgabewert nicht verwenden.In diesem Fall werden sämtliche Aktionen der Funktion durchgeführt, der Rückgabewert wird jedoch ignoriert.MsgBox wird oft auf diese Weise aufgerufen.

6xxtk8kx.collapse_all(de-de,VS.110).gifDarstellung von Deklaration und Aufruf

Mit der folgenden Function-Prozedur wird die längste Seite (die Hypotenuse) eines rechtwinkligen Dreiecks anhand der Werte der beiden anderen Seiten berechnet.

Function hypotenuse(ByVal side1 As Single, ByVal side2 As Single) As Single
    Return Math.Sqrt((side1 ^ 2) + (side2 ^ 2))
End Function

Im folgenden Beispiel wird ein typischer Aufruf von hypotenuse gezeigt.

Dim testLength, testHypotenuse As Single
testHypotenuse = hypotenuse(testLength, 10.7)

Siehe auch

Aufgaben

Gewusst wie: Erstellen einer Prozedur, die einen Wert zurückgibt (Visual Basic)

Gewusst wie: Zurückgeben eines Werts aus einer Prozedur (Visual Basic)

Gewusst wie: Aufrufen einer Prozedur, die einen Wert zurückgibt (Visual Basic)

Referenz

Function-Anweisung (Visual Basic)

Konzepte

Prozeduren in Visual Basic

Sub-Prozeduren (Visual Basic)

Eigenschaftenprozeduren (Visual Basic)

Operatorprozeduren (Visual Basic)

Parameter und Argumente von Prozeduren (Visual Basic)