Sdílet prostřednictvím


Variablenbereich für Visual Basic 6.0-Benutzer

Aktualisiert: November 2007

In Visual Basic 2008 wurde der Gültigkeitsbereich lokaler Variablen aktualisiert, um den Blockbereich zu unterstützen und die strukturierte Programmierung zu verbessern.

Visual Basic 6.0

Jede Variable, die in Visual Basic 6.0 innerhalb einer Prozedur deklariert wird, verfügt über den Prozedurbereich. Innerhalb dieser Prozedur kann also von einer beliebigen Stelle aus auf die Variable zugegriffen werden. Wenn die Variable innerhalb eines Blockes, also innerhalb einer Gruppe von Anweisungen, die mit einer der Anweisungen End, Loop oder Next enden, deklariert wird, kann auch außerhalb des Blockes noch auf die Variable zugegriffen werden.

Das folgende Beispiel zeigt einen Prozedurbereich, in dem der Block eine For-Schleife ist:

For I = 1 To 10

Dim N As Long = 0

' N has procedure scope although it was declared within a block.

N = N + Incr(I)

Next I

W = Base ^ N

' N is still visible outside the block it is declared in.

Visual Basic 2005

Der Gültigkeitsbereich einer Variablen, die in Visual Basic 2008 innerhalb eines Blocks deklariert wurde, erstreckt sich über den Block. Außerhalb des Blocks kann auf die Variable nicht zugegriffen werden. Das vorangehende Beispiel kann wie folgt umgeschrieben werden:

Dim N As Long = 0
' N is declared outside the block and has procedure scope. 
For I As Integer = 1 To 10
    ' I is declared by the For statement and therefore within the block. 
    N = N + Incr(I)
Next I
w = Base ^ N
' N is visible outside the block but I is not. 

Da I durch die For-Anweisung als Teil des For-Blocks deklariert wird, hat I nur im Blockbereich Gültigkeit.

Die Lebensdauer einer Variablen entspricht jedoch immer noch der gesamten Prozedur. Dies trifft unabhängig davon zu, ob die Variable über einen Blockbereich oder einen Prozedurbereich verfügt. Wenn Sie eine Variable innerhalb eines Blockes deklarieren und dann während der Lebensdauer der Prozedur mehrfach in den Block gesprungen wird, sollten Sie die Variable initialisieren, um unerwartete Werte zu vermeiden.

Siehe auch

Konzepte

Änderungen an der Unterstützung von Programmierelementen (Zusammenfassung)