Przekazywanie argumentów według pozycji i według nazwy (Visual Basic)

Gdy wywołanie Sub lub Function procedury, można przekazywać argumenty według pozycji — w kolejności, w jakiej pojawiają się w definicji procedury — lub można je przekazać według nazwy, bez względu na to stanowisko.

Jeżeli argument jest przekazywany za pomocą nazwy, należy określić argument deklarowana przez nazwę, a po nim dwukropek i znak równości (:=), a następnie przez wartość argumentu.Można podać nazwanych argumentów w dowolnej kolejności.

Na przykład, następujące Sub procedura ma trzy argumenty:

Sub studentInfo(ByVal name As String, 
       Optional ByVal age As Short = 0, 
       Optional ByVal birth As Date = #1/1/2000#)

  Debug.WriteLine("Name = " & name & 
                "; age = " & CStr(age) & 
                "; birth date = " & CStr(birth))
End Sub

Po wywołaniu tej procedury, można podać argumenty według pozycji, według nazwy lub przy użyciu mieszaniny obu.

Przekazywanie argumentów przez stanowisko

Można wywołać procedurę studentInfo z jego argumenty przekazywane według pozycji i tekstu rozdzielanego przecinkami, jak pokazano w następującym przykładzie:

Call studentInfo("Mary", 19, #9/21/1981#)

Jeśli opcjonalny argument na liście pozycyjne argument zostanie pominięty, musi posiadać swoje miejsce z przecinkiem.Poniższym przykładzie wywołuje studentInfo bez age argumentu:

Call studentInfo("Mary", , #9/21/1981#)

Przekazywanie argumentów przez nazwę

Alternatywnie, można wywołać studentInfo z argumentami, przekazanego przez nazwę, również rozdzielany przecinkami, jak pokazano w następującym przykładzie:

Call studentInfo(age:=19, birth:=#9/21/1981#, name:="Mary")

Mieszanie argumenty stanowisko i nazwa

Można podać argumenty przez położenie i nazwę w pojedynczy wywoływania, jak pokazano w następującym przykładzie:

Call studentInfo("Mary", birth:=#9/21/1981#)

W poprzednim przykładzie nie dodatkowych przecinek jest niezbędne do przechowywania miejsce pominięty age argument, ponieważ birth jest przekazywana przez nazwę.

Gdy podać argumenty mieszaniną położenie i nazwę, pozycyjne argumentów muszą wszystkie pochodzić pierwszego.Po argumentu jest podana według nazwy, pozostałe argumenty muszą być wszystkie według nazwy.

Dostarczanie argumentów opcjonalnych według nazwy

Przekazywanie argumentów przez nazwę jest szczególnie przydatne w przypadku, gdy wywołanie procedury, która ma więcej niż jeden argument opcjonalny.Podać argumenty według nazwy, nie trzeba użyć przecinków kolejnych oznaczający brak argumentów pozycyjne.Przekazywanie argumentów przez nazwę ułatwia również do śledzenia argumenty, które są przekazywanie i które z nich pominięcie.

Ograniczenia na dostarczanie argumenty według nazwy

Nie można przekazywać argumenty przez nazwę, aby uniknąć wprowadzania wymaganych argumentów.Można pominąć argumentów opcjonalnych.

Tablica parametru nie można przekazać według nazwy.To dlatego podczas wywołania procedury dostarczania nieograniczonej liczby oddzielone przecinkami argumenty Tablica parametru i kompilator nie można skojarzyć z więcej niż jeden argument pod jedną nazwą.

Zobacz też

Zadania

Porady: przekazywanie argumentów do procedury (Visual Basic)

Informacje

Optional (Visual Basic)

ParamArray (Visual Basic)

Koncepcje

Procedury w Visual Basic

Parametry i argumenty procedur (Visual Basic)

Przekazywanie argumentów według wartości i według odwołania (Visual Basic)

Parametry opcjonalne (Visual Basic)

Parameter — Tablice (Visual Basic)