Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Met een parameter kan de aanroepende code een waarde doorgeven aan de procedure wanneer deze wordt aangeroepen. U declareert elke parameter voor een procedure op dezelfde manier als u een variabele declareert, waarbij u de naam en het gegevenstype opgeeft. U geeft ook het doorgegeven mechanisme op en of de parameter optioneel is.
Zie Procedureparameters en argumenten voor meer informatie.
Een procedureparameter definiëren
Voeg in de proceduredeclaratie de parameternaam toe aan de parameterlijst van de procedure, waarbij u deze scheidt van andere parameters door komma's.
Bepaal het gegevenstype van de parameter.
Volg de parameternaam met een
Ascomponent om het gegevenstype op te geven.Kies het mechanisme voor doorgeven dat u voor de parameter wilt gebruiken. Normaal gesproken geeft u een parameter op waarde door, tenzij u wilt dat de procedure de waarde ervan in de aanroepcode kan wijzigen.
Ga vooraf aan de parameternaam met ByVal of ByRef om het doorgegeven mechanisme op te geven. Zie Verschillen tussen het doorgeven van een argument op waarde en op verwijzing voor meer informatie.
Als de parameter optioneel is, voegt u de tag Optioneel toe vóór het doorgeefmechanisme en volgt u het gegevenstype van de parameter met een gelijkteken (
=) en een standaardwaarde.In het volgende voorbeeld wordt het overzicht van een
Subprocedure met drie parameters gedefinieerd. De eerste twee zijn vereist en de derde is optioneel. De parameterdeclaraties worden gescheiden in de parameterlijst door komma's.Sub updateCustomer(ByRef c As customer, ByVal region As String, Optional ByVal level As Integer = 0) ' Insert code to update a customer object. End SubDe eerste parameter accepteert een
customerobject enupdateCustomerkan de variabele die wordt doorgegevencrechtstreeks bijwerken omdat het argument wordt doorgegeven door ByRef. De procedure kan de waarden van de laatste twee argumenten niet wijzigen omdat deze worden doorgegeven door ByVal.Als de aanroepende code geen waarde voor de
levelparameter levert, stelt Visual Basic deze in op de standaardwaarde van 0.Als de typecontrole-instructie (Option Strict Statement) de schakelaar
Offis, is deAsclausule optioneel wanneer u een parameter definieert. Als een van de parameters echter eenAscomponent gebruikt, moeten ze deze allemaal gebruiken. Als de schakeloptie voor typecontrole isOn, is deAscomponent vereist voor elke parameterdefinitie.Het opgeven van gegevenstypen voor al uw programmeerelementen wordt sterk typen genoemd. Wanneer u deze optie instelt
Option Strict On, dwingt Visual Basic sterke typen af. Dit wordt om de volgende redenen sterk aanbevolen:Hiermee wordt IntelliSense-ondersteuning ingeschakeld voor uw variabelen en parameters. Hiermee kunt u hun eigenschappen en andere leden zien terwijl u uw code typt.
Hiermee kan de compiler typecontrole uitvoeren. Dit helpt bij het opvangen van instructies die tijdens de uitvoering kunnen mislukken vanwege fouten zoals overloop. Het onderschept ook aanroepen naar methoden voor objecten die deze niet ondersteunen.
Dit resulteert in een snellere uitvoering van uw code. Een van de redenen hiervoor is dat als u geen gegevenstype voor een programmeerelement opgeeft, de Visual Basic-compiler het
Objecttype toewijst. Uw gecompileerde code moet mogelijk heen en weer worden geconverteerd tussenObjecten andere gegevenstypen, wat de prestaties vermindert.