Postupy: Definování parametru pro proceduru (Visual Basic)
Parametr umožňuje volajícímu kódu předat hodnotu do procedury při jejím volání. Každý parametr deklarujete pro proceduru stejným způsobem, jakým deklarujete proměnnou a zadáte její název a datový typ. Zadáte také předávací mechanismus a to, jestli je parametr volitelný.
Další informace naleznete v tématu Parametry procedury a argumenty.
Definování parametru procedury
V deklaraci procedury přidejte název parametru do seznamu parametrů procedury a oddělte ho od ostatních parametrů čárkou.
Rozhodněte datový typ parametru.
Pokud chcete zadat datový typ, postupujte podle názvu parametru s
As
klauzulí.Rozhodněte se o mechanismu předávání, který chcete pro parametr použít. Normálně předáte parametr podle hodnoty, pokud nechcete, aby procedura mohla změnit jeho hodnotu ve volajícím kódu.
Před název parametru použijte ByVal nebo ByRef , abyste určili mechanismus předávání. Další informace naleznete v tématu Rozdíly mezi předáním argumentu podle hodnoty a odkazem.
Pokud je parametr nepovinný, před předávací mechanismus použijte Volitelný a postupujte podle datového typu parametru se znaménkem rovná se (
=
) a výchozí hodnotou.Následující příklad definuje osnovu
Sub
procedury se třemi parametry. První dva jsou povinné a třetí je nepovinný. Deklarace parametrů jsou v seznamu parametrů odděleny čárkami.Sub updateCustomer(ByRef c As customer, ByVal region As String, Optional ByVal level As Integer = 0) ' Insert code to update a customer object. End Sub
První parametr přijímá
customer
objekt aupdateCustomer
může přímo aktualizovat proměnnou předanouc
, protože argument je předán ByRef. Procedura nemůže změnit hodnoty posledních dvou argumentů, protože jsou předány ByVal.Pokud volající kód nezadává hodnotu parametru
level
, Visual Basic ho nastaví na výchozí hodnotu 0.Pokud je
As
Off
přepínač kontroly typů (Option Strict Statement), je klauzule volitelná při definování parametru. Pokud ale některý z parametrů používáAs
klauzuli, musí ji použít všechny. Pokud jeOn
přepínač kontroly typů ,As
je klauzule vyžadována pro každou definici parametru.Zadání datových typů pro všechny programovací prvky se označuje jako silné psaní. Při nastavování
Option Strict On
jazyka Visual Basic vynucuje silné psaní. Důrazně se doporučuje z následujících důvodů:Umožňuje podporu Technologie IntelliSense pro proměnné a parametry. Díky tomu můžete při psaní kódu zobrazit jejich vlastnosti a další členy.
Umožňuje kompilátoru provádět kontrolu typů. To pomáhá zachytit příkazy, které můžou selhat za běhu kvůli chybám, jako je přetečení. Také zachytává volání metod u objektů, které je nepodporují.
Výsledkem je rychlejší spouštění kódu. Jedním z důvodů je to, že pokud pro programovací prvek nezadáte datový typ, kompilátor jazyka Visual Basic ho
Object
přiřadí typ. Zkompilovaný kód může být potřeba převést zpět a zpět meziObject
a jinými datovými typy, což snižuje výkon.