Share via


Declaratie van variabelen in Visual Basic

U declareert een variabele om de naam en kenmerken ervan op te geven. De declaratie-instructie voor variabelen is de Dim-instructie. De locatie en inhoud bepalen de kenmerken van de variabele.

Zie Namen van gedeclareerde elementen voor variabele naamgevingsregels en -overwegingen.

Declaratieniveaus

Lokale en lidvariabelen

Een lokale variabele is een variabele die in een procedure wordt gedeclareerd. Een lidvariabele is lid van een Visual Basic-type; deze wordt gedeclareerd op moduleniveau, binnen een klasse, structuur of module, maar niet binnen een procedure die intern is voor die klasse, structuur of module.

Gedeelde en exemplaarvariabelen

In een klasse of structuur is de categorie van een lidvariabele afhankelijk van of deze al dan niet wordt gedeeld. Als het wordt gedeclareerd met het gedeelde trefwoord, is het een gedeelde variabele en bestaat deze in één kopie die wordt gedeeld tussen alle exemplaren van de klasse of structuur.

Anders is het een exemplaarvariabele en wordt er een afzonderlijke kopie van deze gemaakt voor elk exemplaar van de klasse of structuur. Een bepaalde kopie van een exemplaarvariabele is alleen beschikbaar voor het exemplaar van de klasse of structuur waarin deze is gemaakt. Het is onafhankelijk van een kopie van de exemplaarvariabele in een ander exemplaar van de klasse of structuur.

Gegevenstype declareren

Met de as-component in de declaratie-instructie kunt u het gegevenstype of objecttype van de variabele definiëren die u declareren. U kunt een van de volgende typen opgeven voor een variabele:

  • Een elementair gegevenstype, zoals Boolean, Longof Decimal

  • Een samengesteld gegevenstype, zoals een matrix of structuur

  • Een objecttype, of klasse, gedefinieerd in uw toepassing of in een andere toepassing

  • Een .NET Framework-klasse, zoals Label of TextBox

  • Een interfacetype, zoals IComparable of IDisposable

U kunt verschillende variabelen in één instructie declareren zonder dat u het gegevenstype hoeft te herhalen. In de volgende instructies worden de variabelen i, jen k gedeclareerd als type Integer, l en m als Long, en xy als Single:

Dim i, j, k As Integer  
' All three variables in the preceding statement are declared as Integer.  
Dim l, m As Long, x, y As Single  
' In the preceding statement, l and m are Long, x and y are Single.  

Zie Gegevenstypen voor meer informatie over gegevenstypen. Zie Objecten en klassen en programmeren met onderdelen voor meer informatie over objecten.

Deductie van lokaal type

Typedeductie wordt gebruikt om de gegevenstypen van lokale variabelen te bepalen die zonder component As zijn gedeclareerd. De compiler bepaalt het type van de variabele van het type initialisatie-expressie. Hiermee kunt u variabelen declareren zonder expliciet een type op te geven. In het volgende voorbeeld worden beide num1 sterk num2 getypt als gehele getallen.

Public Sub inferenceExample()

    ' Using explicit typing.
    Dim num1 As Integer = 3

    ' Using local type inference.
    Dim num2 = 3

End Sub

Als u lokale typedeductie wilt gebruiken, Option Infer moet u zijn ingesteld op On. Zie Deductie- en Optiedeductie-instructie voor meer informatie.

Kenmerken van gedeclareerde variabelen

De levensduur van een variabele is de periode waarin deze beschikbaar is voor gebruik. Over het algemeen bestaat er een variabele zolang het element dat het declareert (zoals een procedure of klasse) nog steeds bestaat. Als de variabele niet langer dan de levensduur van het bijbehorende element hoeft te blijven bestaan, hoeft u niets speciaals te doen in de declaratie. Als de variabele langer moet blijven bestaan dan het bijbehorende element, kunt u het of Shared trefwoord opnemen in Dim de Static instructie. Zie Levensduur in Visual Basic voor meer informatie.

Het bereik van een variabele is de set met alle code die ernaar kan verwijzen zonder de naam ervan in aanmerking te komen. Het bereik van een variabele wordt bepaald door de locatie waar deze wordt gedeclareerd. Code die zich in een bepaalde regio bevindt, kan gebruikmaken van de variabelen die in die regio zijn gedefinieerd zonder dat ze hun namen hoeven te kwalificeren. Zie Bereik in Visual Basic voor meer informatie.

Het toegangsniveau van een variabele is de mate van code die toegangsmachtigingen heeft. Dit wordt bepaald door de toegangsaanpassing (zoals Openbaar of Privé) die u in de Dim instructie gebruikt. Zie Access-niveaus in Visual Basic voor meer informatie.

Zie ook