Sdílet prostřednictvím


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 StringBoolean 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.

Viz také