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.

Datové typy

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ů String je reprezentováno jako String(), a dvojrozměrné pole prvků Boolean je reprezentováno jako Boolean(,).

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.

Tuply

N-tice je lehká struktura, která obsahuje dvě nebo více polí, jejichž typy jsou předdefinované. Od verze Visual Basic 2017 se podporují n-tice. N-tice se nejčastěji používají k vrácení více hodnot z jednoho volání metody, aniž by bylo nutné předávat argumenty odkazem nebo balit vrácená pole do třídy nebo struktury, která je náročnější. Další informace o n-ticích naleznete v tématu n-tice.

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. Následující příklad to ilustruje.

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é pole arrayA a arrayB považovány za stejného datového typu, 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é