Delen via


Procedure: Een parameter definiëren voor een procedure (Visual Basic)

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

  1. Voeg in de proceduredeclaratie de parameternaam toe aan de parameterlijst van de procedure, waarbij u deze scheidt van andere parameters door komma's.

  2. Bepaal het gegevenstype van de parameter.

  3. Volg de parameternaam met een As component om het gegevenstype op te geven.

  4. Bepaal het doorgegeven mechanisme dat u wilt gebruiken voor de parameter. Normaal gesproken geeft u een parameter op waarde door, tenzij u wilt dat de procedure de waarde ervan in de aanroepcode kan wijzigen.

  5. 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.

  6. Als de parameter optioneel is, gaat u vooraf aan het doorgegeven mechanisme met Optioneel en volgt u het gegevenstype parameter met een gelijkteken (=) en een standaardwaarde.

    In het volgende voorbeeld wordt het overzicht van een Sub procedure 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 Sub
    

    De eerste parameter accepteert een customer object en updateCustomer kan de variabele die wordt doorgegeven c rechtstreeks 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 level parameter levert, stelt Visual Basic deze in op de standaardwaarde van 0.

    Als de schakeloptie typecontrole (optie strikt instructie) is Off, is de As component optioneel wanneer u een parameter definieert. Als een van de parameters echter een As component gebruikt, moeten ze deze allemaal gebruiken. Als de schakeloptie voor typecontrole is On, is de As component 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 Object type toewijst. Uw gecompileerde code moet mogelijk heen en weer worden geconverteerd tussen Object en andere gegevenstypen, wat de prestaties vermindert.

Zie ook