Udostępnij za pośrednictwem


Procedury typu Function (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 Instrukcji funkcyjnej (Visual Basic).

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

6xxtk8kx.collapse_all(pl-pl,VS.110).gifTyp 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 Instrukcji funkcyjnej (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 Instrukcji funkcyjnej (Visual Basic).Aby uzyskać informacje dotyczące powracania tablic, zobacz Tablice w języku 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.

6xxtk8kx.collapse_all(pl-pl,VS.110).gifIlustracja 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

Jak: tworzenie procedura, która zwraca wartość (Visual Basic)

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

Jak: wywołanie procedury, która zwraca wartość (Visual Basic)

Informacje

Instrukcji funkcyjnej (Visual Basic)

Koncepcje

Procedury języka Visual Basic

Procedury typu Sub (Visual Basic)

Właściwość procedur (Visual Basic)

Operator procedur (Visual Basic)

Parametry procedury i argumenty (Visual Basic)