Share via


Procedureparameters en -argumenten (Visual Basic)

In de meeste gevallen heeft een procedure enige informatie nodig over de omstandigheden waarin deze is aangeroepen. Een procedure die herhaalde of gedeelde taken uitvoert, maakt gebruik van verschillende gegevens voor elke aanroep. Deze informatie bestaat uit variabelen, constanten en expressies die u doorgeeft aan de procedure wanneer u deze aanroept.

Een parameter vertegenwoordigt een waarde die volgens de procedure moet worden opgegeven wanneer u deze aanroept. De declaratie van de procedure definieert de parameters.

U kunt een procedure definiëren zonder parameters, één parameter of meer dan één. Het deel van de proceduredefinitie waarmee de parameters worden opgegeven, wordt de parameterlijst genoemd.

Een argument vertegenwoordigt de waarde die u opgeeft aan een procedureparameter wanneer u de procedure aanroept. De aanroepende code levert de argumenten wanneer deze de procedure aanroept. Het deel van de procedureoproep waarmee de argumenten worden opgegeven, wordt de lijst met argumenten genoemd.

In de volgende afbeelding ziet u code die de procedure safeSquareRoot aanroept vanaf twee verschillende plaatsen. De eerste aanroep geeft de waarde van de variabele x (4.0) door aan de parameter numberen de retourwaarde in root (2.0) wordt toegewezen aan de variabele y. De tweede aanroep geeft de letterlijke waarde 9,0 door aan numberen wijst de retourwaarde (3,0) toe aan een variabele z.

Diagram that shows passing an argument to a parameter

Zie Verschillen tussen parameters en argumenten voor meer informatie.

Parametergegevenstype

U definieert een gegevenstype voor een parameter met behulp van de component in de As declaratie. De volgende functie accepteert bijvoorbeeld een tekenreeks en een geheel getal.

Function appointment(ByVal day As String, ByVal hour As Integer) As String
    ' Insert code to return any appointment for the given day and time.
    Return "appointment"
End Function

Als de schakeloptie voor typecontrole (optie strikt instructie) de As component is Off, optioneel, behalve dat als een van de parameters deze gebruikt, alle parameters deze moeten gebruiken. Als typecontrole is On, is de As component vereist voor alle procedureparameters.

Als de aanroepende code een argument verwacht te leveren met een ander gegevenstype dan dat van de bijbehorende parameter, zoals Byte een String parameter, moet deze een van de volgende handelingen uitvoeren:

  • Alleen argumenten opgeven met gegevenstypen die breder worden voor het parametergegevenstype;

  • Ingesteld Option Strict Off om impliciete narrowing-conversies toe te staan; of

  • Gebruik een conversiewoord om het gegevenstype expliciet te converteren.

Type parameters

Een algemene procedure definieert naast de normale parameters ook een of meer typeparameters . Met een algemene procedure kan de aanroepende code verschillende gegevenstypen doorgeven telkens wanneer deze de procedure aanroept, zodat de gegevenstypen aan de vereisten van elke afzonderlijke aanroep kunnen worden aangepast. Zie algemene procedures in Visual Basic.

Zie ook