Różnice pomiędzy parametrami i argumentami (Visual Basic)

W większości przypadków procedura musi zawierać pewne informacje o okolicznościach, w których została wywołana. Procedura wykonująca powtarzające się lub udostępnione zadania używa różnych informacji dla każdego wywołania. Te informacje składają się ze zmiennych, stałych i wyrażeń przekazywanych do procedury podczas ich wywoływania.

Aby przekazać te informacje do procedury, procedura definiuje parametr, a kod wywołujący przekazuje argument do tego parametru. Parametr można traktować jako miejsce parkingowe i argument jako samochód. Podobnie jak różne samochody mogą zaparkować na parkingu w różnym czasie, kod wywołujący może przekazać inny argument do tego samego parametru za każdym razem, gdy wywołuje procedurę.

Parametry

Parametr reprezentuje wartość, którą procedura oczekuje przekazania po wywołaniu. Deklaracja procedury definiuje jej parametry.

Podczas definiowania Function procedury lub Sub należy określić listę parametrów w nawiasach bezpośrednio po nazwie procedury. Dla każdego parametru należy określić nazwę, typ danych i mechanizm przekazywania (ByVal lub ByRef). Można również wskazać, że parametr jest opcjonalny. Oznacza to, że kod wywołujący nie musi przekazywać dla niego wartości.

Nazwa każdego parametru służy jako zmienna lokalna w procedurze. Używasz nazwy parametru w taki sam sposób, jak w przypadku każdej innej zmiennej.

Argumenty

Argument reprezentuje wartość przekazywaną do parametru procedury podczas wywoływania procedury. Kod wywołujący dostarcza argumenty podczas wywoływania procedury.

Podczas wywoływania Function procedury lub Sub należy dołączyć listę argumentów w nawiasach bezpośrednio po nazwie procedury. Każdy argument odpowiada parametrowi na tej samej pozycji na liście.

W przeciwieństwie do definicji parametrów argumenty nie mają nazw. Każdy argument jest wyrażeniem, które może zawierać zero lub więcej zmiennych, stałych i literałów. Typ danych obliczonego wyrażenia powinien być zwykle zgodny z typem danych zdefiniowanym dla odpowiedniego parametru i w każdym przypadku musi być konwertowany na typ parametru.

Zobacz też