Udostępnij za pośrednictwem


Procedury funkcji (Visual Basic)

A Function procedurę jest to szereg Visual Basic instrukcji wyodrębniony za pomocą Function i End Function instrukcji.Function Procedura wykonuje zadania, a następnie zwraca sterowanie do kodu wywołującego.Zwraca kontroli, również zwraca wartość do kodu wywołującego.

Przy każdym wywołaniu procedury, swoje sprawozdanie, uruchomić, począwszy od pierwszej instrukcji wykonywalnych po Function instrukcji, a skończywszy na pierwszym End Function, Exit Function, lub Return Napotkano instrukcję.

Można zdefiniować Function procedurę w module, klasy lub struktury.Jest Public domyślnie, co oznacza, można ją wywołać z dowolnego miejsca w aplikacji, które ma dostęp do modułu, klasy lub struktury to zdefiniowane.

A Function procedury mogą pobierać argumenty, takich jak stałych, zmiennych lub wyrażeń, które są przekazywane do niej przez kod wywołujący.

Składnia deklaracji

Składnia deklaracji Function się następującą procedurę:

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

Modyfikatorów można określić poziom dostępu i informacji dotyczących przeciążenia, zastępowanie, udostępnianie i przesłanianie.Aby uzyskać więcej informacji, zobacz Function — Instrukcja (Visual Basic).

Deklarujesz każdego parametru w taki sam sposób jak w przypadku Sub — Procedury (Visual Basic).

Typ danych

Każdy Function procedura ma typ danych, czy po prostu każdej zmiennej.Ten typ danych jest określony przez As w klauzuli Function instrukcja która określa typ danych wartości, funkcja zwraca do kodu wywołującego.Następujące deklaracje próbki ilustrują.

Function yesterday() As Date
End Function

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

Aby uzyskać więcej informacji, zobacz "Części" w Function — Instrukcja (Visual Basic).

Zwracanie wartości

Wartość Function procedura może przesłać z powrotem do kodu wywołującego nosi nazwę swojej zwracanej wartości.Procedura zwraca tę wartość w jednym z dwóch sposobów:

  • Używa Return instrukcję, aby określić zwracanej wartości i zwraca niezwłocznie sterowanie do programu wywołującego.Poniższy przykład ilustruje to.

    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
    
  • To przypisuje wartość do własnej nazwy funkcji w jeden lub więcej instrukcji postępowania.Formant nie powraca do programu wywołującego, aż do Exit Function lub End Function wykonaniu instrukcji.Poniższy przykład ilustruje to.

    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
    

Zalety przypisania wartość zwracana nazwa funkcji jest, że formant nie zwraca z procedury aż do napotkania Exit Function lub End Function instrukcji.Dzięki temu można przypisać wartość wstępne i dostosować go później, jeśli to konieczne.

Aby uzyskać więcej informacji na temat zwracanie wartości, zobacz Function — Instrukcja (Visual Basic).Aby uzyskać informacje dotyczące powracania tablic, zobacz Tablice w Visual Basic.

Wywołanie składni

Wywołać Function procedurę, zgodnie z tym jego nazwa i argumenty albo po prawej stronie instrukcji przypisania lub w wyrażeniu.Należy podać wartości dla wszystkich argumentów, które nie są opcjonalne, a lista argumentów należy ująć w nawiasy.Jeśli argumenty nie są dostarczane, opcjonalnie można pominąć nawiasy.

Składnia wywołania Function się następującą procedurę:

lvalue =functionname[(argumentlist)]

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

Po wywołaniu Function procedury, nie trzeba używać swojej zwracanej wartości.Jeśli tego nie zrobi, wykonywane są wszystkie akcje funkcji, ale zwracana wartość jest ignorowana.MsgBoxnazywa się często w ten sposób.

Ilustracja deklaracji i wywołanie

Następujące Function procedurę można obliczyć długość najdłuższego boku wynosi lub przeciwprostokątnej trójkąta prostokątnego, uwzględniając wartości dla pozostałych dwóch stronach.

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

W poniższym przykładzie pokazano wywołanie typowe hypotenuse.

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

Zobacz też

Zadania

Porady: tworzenie procedury, która zwraca wartość (Visual Basic)

Porady: zwracanie wartości z procedury (Visual Basic)

Porady: wywoływanie procedury zwracającej wartość (Visual Basic)

Informacje

Function — Instrukcja (Visual Basic)

Koncepcje

Procedury w Visual Basic

Sub — Procedury (Visual Basic)

Procedury własności (Visual Basic)

Procedury operatorów (Visual Basic)

Parametry i argumenty procedur (Visual Basic)