Složené datové typy (Visual Basic)
Kromě základních datových typů, které Visual Basic poskytuje, můžete také sestavit položky různých typů a vytvářet složené datové typy , jako jsou struktury, pole a třídy. Složené datové typy můžete vytvářet ze základních typů a z jiných složených typů. Můžete například definovat pole prvků struktury nebo strukturu se členy pole.
Typy dat
Složený typ se liší od datového typu některé z jejích součástí. Například pole Integer
prvků není datového Integer
typu.
Datový typ pole je obvykle reprezentován pomocí typu prvku, závorek a čárek podle potřeby. Například jednorozměrné pole prvků je reprezentováno jako , a dvojrozměrné pole String
Boolean
prvků je reprezentováno jako Boolean(,)
.String()
Typy struktur
Neexistuje žádný datový typ, který by zahrnoval všechny struktury. Místo toho každá definice struktury představuje jedinečný datový typ, i když dvě struktury definují stejné prvky ve stejném pořadí. Pokud však vytvoříte dvě nebo více instancí stejné struktury, Visual Basic je považuje za stejný datový typ.
Řazené kolekce členů
Řazená kolekce členů je zjednodušená struktura, která obsahuje dvě nebo více polí, jejichž typy jsou předdefinované. Od verze Visual Basic 2017 se podporují řazené kolekce členů. Řazené kolekce členů se nejčastěji používají k vrácení více hodnot z volání jedné metody, aniž byste museli předávat argumenty odkazem nebo zabalit vrácená pole do třídy nebo struktury s větší hmotností. Další informace o řazených kolekcích členů najdete v tématu řazené kolekce členů.
Typy polí
Neexistuje žádný datový typ, který by zahrnoval všechna pole. Datový typ konkrétní instance pole je určen následujícím kódem:
Skutečnost, že je pole
Pořadí (počet dimenzí) pole
Typ prvku pole
Konkrétně délka dané dimenze není součástí datového typu instance. Toto dokládá následující příklad.
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) {}
V předchozím příkladu jsou proměnné arrayA
pole a arrayB
jsou považovány za stejné datové typy – Byte()
i když jsou inicializovány na různé délky. arrayB
Proměnné a arrayC
nejsou stejného typu, protože jejich typy prvků se liší. arrayC
Proměnné a arrayD
nejsou stejného typu, protože jejich pořadí se liší. arrayD
Proměnné a arrayE
mají stejný typ – Short(,)
protože jejich pořadí a typy prvků jsou stejné, i když arrayD
ještě nejsou inicializovány.
Další informace o polích naleznete v tématu Pole.
Typy tříd
Neexistuje žádný datový typ, který by zahrnoval všechny třídy. I když jedna třída může dědit z jiné třídy, každý z nich je samostatný datový typ. Více instancí stejné třídy je stejného datového typu. Pokud přiřadíte jednu proměnnou instance třídy jiné, nejen že mají stejný datový typ, odkazují na stejnou instanci třídy v paměti.
Další informace o třídách naleznete v tématu Objekty a třídy.