Delen via


Verschillen tussen modiable en nonmodifiable argumenten (Visual Basic)

Wanneer u een procedure aanroept, geeft u er doorgaans een of meer argumenten aan door. Elk argument komt overeen met een onderliggend programmeerelement. Zowel de onderliggende elementen als de argumenten zelf kunnen worden gewijzigd of niet kunnen worden gewijzigd.

Wijzigbare en niet-modibare elementen

Een programmeerelement kan een wijzigbaar element zijn, waarvan de waarde kan worden gewijzigd of een niet-modieerbaar element, dat een vaste waarde heeft zodra het is gemaakt.

De volgende tabel bevat aanpasbare en niet-aanpasbare programmeerelementen.

Wijzigbare elementen Niet-aanpasbare elementen
Lokale variabelen (gedeclareerd binnen procedures), inclusief objectvariabelen, met uitzondering van alleen-lezen Alleen-lezen variabelen, velden en eigenschappen
Velden (lidvariabelen van modules, klassen en structuren), met uitzondering van alleen-lezen Constanten en letterlijke gegevens
Eigenschappen, met uitzondering van alleen-lezen Opsommingsleden
Matrixelementen Expressies (zelfs als hun elementen kunnen worden gewijzigd)

Wijzigbare en niet-modibare argumenten

Een wijzigbaar argument is een argument met een wijzigbaar onderliggend element. De aanroepende code kan op elk gewenst moment een nieuwe waarde opslaan en als u het argument ByRef doorgeeft, kan de code in de procedure ook het onderliggende element in de aanroepende code wijzigen.

Een niet-wijzigbaar argument heeft een niet-wijzigbaar onderliggend element of wordt doorGegeven door ByVal. De procedure kan het onderliggende element in de aanroepende code niet wijzigen, zelfs als het een wijzigbaar element is. Als het een niet-wijzigbaar element is, kan de aanroepende code zelf het niet wijzigen.

De aangeroepen procedure kan de lokale kopie van een niet-wijzigbaar argument wijzigen, maar deze wijziging heeft geen invloed op het onderliggende element in de aanroepende code.

Zie ook