Zusammengesetzte Datentypen (Visual Basic)Composite Data Types (Visual Basic)

Zusätzlich zu den bereitgestellten elementarer Datentyp Typen Visual Basic können Sie auch Elemente unterschiedlichen Typs zu erstellen assemblieren zusammengesetzte Datentypen wie z. B. Arrays, Strukturen und Klassen.In addition to the elementary data types Visual Basic supplies, you can also assemble items of different types to create composite data types such as structures, arrays, and classes. Sie können zusammengesetzte Datentypen aus elementare Typen und aus anderen zusammengesetzten Typen erstellen.You can build composite data types from elementary types and from other composite types. Sie können z. B. ein Array von Strukturelementen oder eine Struktur mit Arraymember definieren.For example, you can define an array of structure elements, or a structure with array members.

DatentypenData Types

Ein zusammengesetzter Typ ist der Datentyp eines beliebigen Komponenten unterscheiden.A composite type is different from the data type of any of its components. Angenommen, ein Array von Integer Elemente weist nicht die Integer -Datentyp.For example, an array of Integer elements is not of the Integer data type.

Datentyp eines Arrays wird normalerweise mithilfe von Elementtyp, Klammern und Kommas nach Bedarf dargestellt.An array data type is normally represented using the element type, parentheses, and commas as necessary. Z. B. ein eindimensionales Array vom String Elemente wird dargestellt als String(), und ein zweidimensionales Array von Boolean Elemente wird als Boolean(,).For example, a one-dimensional array of String elements is represented as String(), and a two-dimensional array of Boolean elements is represented as Boolean(,).

StrukturtypenStructure Types

Es gibt keinen universellen Datentyp, der alle Strukturen umfasst.There is no single data type comprising all structures. Stattdessen stellt jede Definition einer Struktur einen eindeutigen Datentyp dar, auch wenn die beiden Strukturen identischer Elemente in derselben Reihenfolge definiert werden.Instead, each definition of a structure represents a unique data type, even if two structures define identical elements in the same order. Allerdings berücksichtigt Visual Basic, wenn Sie zwei oder mehr Instanzen derselben Struktur erstellen, zu dem gleichen Datentyp aufweisen.However, if you create two or more instances of the same structure, Visual Basic considers them to be of the same data type.

TupelTuples

Ein Tupel ist eine einfache Struktur, die zwei oder mehr Felder enthält, deren Typen vordefiniert sind.A tuple is a lightweight structure that contains two or more fields whose types are predefined. Tupel werden beginnend mit Visual Basic 2017 unterstützt.Tuples are supported starting with Visual Basic 2017. Tupel werden am häufigsten verwendet, um mehrere Werte aus einem einzelnen Methodenaufruf zurückzugeben, ohne Argumente nach Verweis übergeben müssen, oder Packen die zurückgegebenen Felder in einer mehr Heavyweight-Klasse oder Struktur.Tuples are most commonly used to return multiple values from a single method call without having to pass arguments by reference or packaging the returned fields in a more heavy-weight class or structure. Finden Sie unter der Tupel Thema Weitere Informationen zu Tupeln.See the Tuples topic for more information on tuples.

ArraytypenArray Types

Es gibt keinen universellen Datentyp, der alle Arrays umfasst.There is no single data type comprising all arrays. Der Datentyp einer bestimmten Instanz eines Arrays wird durch Folgendes bestimmt:The data type of a particular instance of an array is determined by the following:

  • Die Tatsache, dass ein arrayThe fact of being an array

  • Der Rang (Anzahl der Dimensionen) des ArraysThe rank (number of dimensions) of the array

  • Der Elementtyp des ArraysThe element type of the array

Insbesondere ist die Länge einer bestimmten Dimension nicht Teil der Datentyp der Instanz.In particular, the length of a given dimension is not part of the instance's data type. Dies wird anhand des folgenden Beispiels veranschaulicht.The following example illustrates this.

Dim arrayA( ) As Byte = New Byte(12) {}  
Dim arrayB( ) As Byte = New Byte(100) {}  
Dim arrayC( ) As Short = New Short(100) {}  
Dim arrayD( , ) As Short  
Dim arrayE( , ) As Short = New Short(4, 10) {}  

Im vorherigen Beispiel Arrayvariablen arrayA und arrayB gelten die gleichen Datentyp sein – Byte() –, obwohl sie mit unterschiedlichen Längen initialisiert werden.In the preceding example, array variables arrayA and arrayB are considered to be of the same data type — Byte() — even though they are initialized to different lengths. Variablen arrayB und arrayC sind Sie nicht den gleichen Typ aufweisen, da ihre Elementtypen unterschiedlich sind.Variables arrayB and arrayC are not of the same type because their element types are different. Variablen arrayC und arrayD sind Sie nicht den gleichen Typ aufweisen, da ihre Ränge unterschiedlich sind.Variables arrayC and arrayD are not of the same type because their ranks are different. Variablen arrayD und arrayE vom gleichen Typ – Short(,) – da ihre Ränge und Elementtypen identisch, obwohl sind arrayD wurde noch nicht initialisiert.Variables arrayD and arrayE have the same type — Short(,) — because their ranks and element types are the same, even though arrayD is not yet initialized.

Weitere Informationen zu Arrays finden Sie unter Arrays.For more information on arrays, see Arrays.

KlassentypenClass Types

Es gibt keinen universellen Datentyp, der alle Klassen umfasst.There is no single data type comprising all classes. Obwohl eine Klasse von einer anderen Klasse erben kann, ist jeweils eine separate Datentyp.Although one class can inherit from another class, each is a separate data type. Mehrere Instanzen derselben Klasse sind vom gleichen Datentyp.Multiple instances of the same class are of the same data type. Wenn Sie eine Klasseninstanzvariable zu einem anderen zuweisen, nicht nur verfügen sie über den gleichen Datentyp aufweisen, sie mit der gleichen Klasseninstanz im Arbeitsspeicher verweisen.If you assign one class instance variable to another, not only do they have the same data type, they point to the same class instance in memory.

Weitere Informationen zu Klassen finden Sie unter Objekte und Klassen.For more information on classes, see Objects and Classes.

Siehe auchSee Also

DatentypenData Types
Elementare DatentypenElementary Data Types
Generische Typen in Visual BasicGeneric Types in Visual Basic
Werttypen und VerweistypenValue Types and Reference Types
Konvertierungen in Visual BasicType Conversions in Visual Basic
StrukturenStructures
Problembehandlung bei DatentypenTroubleshooting Data Types
Gewusst wie: Ablegen mehrerer Werte in einer VariablenHow to: Hold More Than One Value in a Variable