Variablendeklaration in Visual Basic

Eine Variable wird deklariert, um ihren Namen und ihre Merkmale anzugeben. Die Deklarationsanweisung für Variablen ist die Dim-Anweisung. Position und Inhalt der Anweisung bestimmen die Merkmale der Variablen.

Regeln und Überlegungen zur Variablenbenennung finden Sie unter Namen deklarierter Elemente (Visual Basic).

Deklarationsebenen

Lokale Variablen und Membervariablen

Eine lokale Variable ist eine Variable, die innerhalb einer Prozedur deklariert wird. Eine Membervariable ist ein Member eines Visual Basic-Typs. Sie wird auf Modulebene innerhalb einer Klasse, einer Struktur oder eines Moduls, aber nicht innerhalb einer internen Prozedur dieser Klasse, dieser Struktur oder dieses Moduls deklariert.

Freigegebene Variablen und Instanzvariablen

In einer Klasse oder Struktur hängt die Kategorie einer Membervariablen davon ab, ob sie freigegeben wird. Wenn sie mit dem Schlüsselwort Shared deklariert wird, handelt es sich um eine freigegebene Variable. Das bedeutet, sie ist in einer einzelnen Kopie vorhanden und wird von allen Instanzen der Klasse oder Struktur gemeinsam genutzt.

Andernfalls handelt es sich um eine Instanzvariable. Das bedeutet, dass für jede Instanz der Klasse oder Struktur eine separate Kopie erstellt wird. Eine bestimmte Kopie einer Instanzvariablen ist jeweils nur für die Instanz der Klasse oder Struktur verfügbar, in der sie erstellt wurde. Sie ist unabhängig von einer Kopie der Instanzvariablen in anderen Instanzen der Klasse oder Struktur.

Deklarieren des Datentyps

Mit der As-Klausel in der Deklarationsanweisung können Sie den Daten- oder Objekttyp der Variablen definieren, die Sie deklarieren. Für eine Variable kann ein beliebiger der folgenden Typen angegeben werden:

  • Ein elementarer Datentyp (beispielsweise Boolean, Long oder Decimal)

  • Ein zusammengesetzter Datentyp (beispielsweise ein Array oder eine Struktur)

  • Ein Objekttyp oder eine Klasse, der bzw. die entweder in Ihrer Anwendung oder in einer anderen Anwendung definiert ist

  • Eine .NET Framework-Klasse (beispielsweise Label oder TextBox)

  • Ein Schnittstellentyp (beispielsweise IComparable oder IDisposable)

Sie können mehrere Variablen in einer einzelnen Anweisung deklarieren, ohne den Datentyp wiederholen zu müssen. In den folgenden Anweisungen werden die Variablen i, j und k als Typ Integer, die Variablen l und m als Long und die Variablen x und y als Single deklariert:

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.  

Weitere Informationen zu Datentypen finden Sie unter Datentypen in Visual Basic. Weitere Informationen zu Objekten finden Sie unter Objekte und Klassen in Visual Basic sowie unter Programming with Components (Programmieren mit Komponenten).

Lokaler Typrückschluss

Ein Typrückschluss wird verwendet, um die Datentypen lokaler Variablen zu bestimmen, die ohne As-Klausel deklariert wurden. Der Compiler leitet den Typ der Variablen vom Typ des Initialisiererausdrucks ab. Dadurch können Sie Variablen ohne explizite Angabe eines Typs deklarieren. Im folgenden Beispiel ist sowohl num1 als auch num2 stark als ganze Zahlen typisiert.

Public Sub inferenceExample()

    ' Using explicit typing.
    Dim num1 As Integer = 3

    ' Using local type inference.
    Dim num2 = 3

End Sub

Wenn Sie den lokalen Typrückschluss verwenden möchten, muss Option Infer auf On festgelegt werden. Weitere Informationen finden Sie unter Local Type Inference (Lokaler Typrückschluss) und Option Infer Statement (Option Infer-Anweisung).

Merkmale deklarierter Variablen

Die Lebensdauer einer Variablen ist der Zeitraum, in dem sie verwendet werden kann. Im Allgemeinen ist eine Variable so lange vorhanden wie das Element, das sie deklariert (z. B. eine Prozedur oder Klasse). Wenn die Variable nicht über die Lebensdauer des enthaltenden Elements hinaus vorhanden sein muss, ist in der Deklaration nichts weiter erforderlich. Wenn die Variable länger vorhanden sein muss als das enthaltende Element, können Sie das Schlüsselwort Static oder Shared in ihre Dim-Anweisung einschließen. Weitere Informationen finden Sie unter Lebensdauer in Visual Basic.

Der Bereich einer Variablen ist der gesamte Code, der auf sie verweisen kann, ohne ihren Namen zu qualifizieren. Der Variablenbereich wird durch den Ort bestimmt, an dem sie deklariert wird. Code, der sich in einer bestimmten Region befindet, kann die in dieser Region definierten Variablen verwenden, ohne deren Namen qualifizieren zu müssen. Weitere Informationen finden Sie unter Scope in Visual Basic.

Die Zugriffsebene einer Variablen ist der Umfang des zugriffsberechtigten Codes. Dies wird durch den Zugriffsmodifizierer (z. B. Public oder Private) bestimmt, den Sie in der Dim-Anweisung verwenden. Weitere Informationen finden Sie unter Zugriffsebenen in Visual Basic.

Weitere Informationen