Typzeichen (Visual Basic)

Zusätzlich zum Angeben eines Datentyps in einer Deklarationsanweisung können Sie den Datentyp einiger Programmierelemente mit einem Typzeichen erzwingen. Das Typzeichen muss unmittelbar auf das Element folgen, ohne dass zwischen ihnen dazwischenliegende Zeichen vorhanden sind.

Das Typzeichen ist nicht Teil des Namens des Elements. Auf ein Element, das mit einem Typzeichen definiert ist, kann ohne das Typzeichen verwiesen werden.

Bezeichner-Typzeichen

Visual Basic stellt eine Reihe von Bezeichner-Typzeichen bereit, die Sie in einer Deklaration verwenden können, um den Datentyp einer Variablen oder Konstanten anzugeben. In der folgenden Tabelle sind die verfügbaren Bezeichner-Typzeichen mit Verwendungsbeispielen aufgeführt.

Bezeichner-Typzeichen Datentyp Beispiel
% Integer Dim L%
& Long Dim M&
@ Decimal Const W@ = 37.5
! Single Dim Q!
# Double Dim X#
$ String Dim V$ = "Secret"

Es sind keine Bezeichner-Typzeichen für die Datentypen Boolean, Byte, Char, Date, Object, SByte, Short, UInteger, ULong, oder UShort für zusammengesetzte Datentypen wie Arrays oder Strukturen vorhanden.

In einigen Fällen können Sie das $-Zeichen an eine Visual Basic-Funktion anfügen, z. B. Left$ anstelle von Left, um einen zurückgegebenen Wert vom Typ String zu erhalten.

In allen Fällen muss das Zeichen des Bezeichner-Typzeichens unmittelbar auf den Bezeichnernamen folgen.

Literal-Typzeichen

Ein Literal ist eine Textdarstellung eines bestimmten Werts eines Datentyps.

Standardliteraltypen

Die Form eines Literals, wie sie in Ihrem Code angezeigt wird, bestimmt in der Regel den Datentyp. In der folgenden Tabelle werden die Standardtypen gezeigt.

Textform des Literals Standarddatentyp Beispiel
Numerisch, kein Bruchteil Integer 2147483647
Numerisch, kein Bruchteil, zu groß für Integer Long 2147483648
Numerisch, Bruchteil Double 1.2
Eingeschlossen in doppelte Anführungszeichen. String "A"
Eingeschlossen in Zahlenzeichen Date #5/17/1993 9:32 AM#

Erzwungene Literaltypen

Visual Basic stellt eine Reihe von Literal-Typzeichen bereit, mit denen Sie erzwingen können, dass ein Literal einen anderen Datentyp als den in der angegebenen Form annimmt. Dazu fügen Sie das Zeichen am Ende des Literals an. In der folgenden Tabelle sind die verfügbaren Literal-Typzeichen mit Verwendungsbeispielen aufgeführt.

Literal-Typzeichen Datentyp Beispiel
S Short I = 347S
I Integer J = 347I
L Long K = 347L
D Decimal X = 347D
F Single Y = 347F
R Double Z = 347R
US UShort L = 347US
UI UInteger M = 347UI
UL ULong N = 347UL
C Char Q = "."C

Es sind keine Literal-Typzeichen für die Datentypen Boolean, Byte, Date, Object, SByte oder String für zusammengesetzte Datentypen wie Arrays oder Strukturen vorhanden.

Literale können auch die Bezeichner-Typzeichen (%, &, @, !, #, $) sowie Variablen, Konstanten und Ausdrücke verwenden. Die Literal-Typzeichen (S, I, L, D, F, R, C) können jedoch nur mit Literalen verwendet werden.

In allen Fällen muss das Literal-Typzeichen unmittelbar auf den Literalwert folgen.

Hexadezimal-, binär- und oktale Literale

Der Compiler interpretiert normalerweise ein ganzzahliges Literal im Dezimalzahlsystem (Basis 10). Sie können auch ein ganzzahliges Literal als Hexadezimalzahl (Basis 16) mit dem &H-Präfix, als binäre Zahl (Basis 2) mit dem &B-Präfix und als oktale Zahl (Basis 8) mit dem &O-Präfix definieren. Die Ziffern, die dem Präfix folgen, müssen für das Zahlensystem geeignet sein. Dies wird in der folgenden Tabelle veranschaulicht.

Zahlenbasis Präfix Gültige Ziffernwerte Beispiel
Hexadezimalformat (Basis 16) &H 0-9 und A-F &HFFFF
Binär (Basis 2) &B 0-1 &B01111100
Oktalformat (Basis 8) &O 0-7 &O77

Ab Visual Basic 2017 können Sie den Unterstrich (_) als Gruppentrennzeichen verwenden, um die Lesbarkeit eines integralen Literals zu verbessern. Im folgenden Beispiel wird das _-Zeichen verwendet, um ein binäres Literal in 8-Bit-Gruppen zu gruppieren:

Dim number As Integer = &B00100010_11000101_11001111_11001101

Sie können einem Literal mit Präfix einem Literal-Typzeichen folgen. Im folgenden Beispiel wird dies veranschaulicht.

Dim counter As Short = &H8000S
Dim flags As UShort = &H8000US

Im vorherigen Beispiel weist counter den Dezimalwert -32768 und flags den Dezimalwert +32768 auf.

Ab Visual Basic 15.5 können Sie auch den Unterstrich (_) als vorangestelltes Trennzeichen zwischen dem Präfix und den Hexadezimal-, Binär- oder Oktalziffern verwenden. Beispiel:

Dim number As Integer = &H_C305_F860

Um den Unterstrich als vorangestelltes Trennzeichen verwenden zu können, müssen Sie Ihrer Visual Basic-Projektdatei (VBPROJ-Datei) das folgende Element hinzufügen:

<PropertyGroup>
  <LangVersion>15.5</LangVersion>
</PropertyGroup>

Weitere Informationen finden Sie unter Auswählen der Visual Basic-Sprachversion.

Siehe auch