Souhrn datových typů (Visual Basic)
V následující tabulce jsou uvedeny datové typy jazyka Visual Basic, jejich podpůrné běžné typy jazykového modulu runtime, jejich přidělení nominální úložiště a jejich rozsahů hodnot.
Typ jazyka Visual Basic |
Společná struktura typu runtime jazyka |
Jmenovité pro ukládání |
Rozsah hodnot |
---|---|---|---|
Závisí na implementaci platformy |
True nebo False |
||
1 bajt |
0 až 255 (bez znaménka) |
||
Char (znak) |
2 bajty |
0 až 65535 (bez znaménka) |
|
8 bajtů |
0: 00: 00 (půlnoc) na 1. ledna 0001 až 11: 59: 59 odp na 31. prosince 9999. |
||
16 bajtů |
0 až +/-79,228,162,514,264,337,593,543,950,335 (+/-7.9... E + 28) † s bez desetinné čárky; 0 až +/-7,9228162514264337593543950335 28 míst napravo od desetinné čárky; nejmenší nenulové číslo je +/-0,0000000000000000000000000001 (+/-1E-28) † |
||
Dvojité (s dvojitou přesností a plovoucí desetinnou čárkou) |
8 bajtů |
-1.79769313486231570E + 308 prostřednictvím - 4.94065645841246544E-324 † pro záporné hodnoty; 4.94065645841246544E-324 až 1.79769313486231570E + 308 † pro kladné hodnoty |
|
4 bajty |
648 až 2 147 483 647 (podepsaný) |
||
Dlouhý (dlouhé celé číslo) |
8 bajtů |
-9,223,372,036,854,775,808 až 9,223,372,036,854,775,807 (9.2... E + 18 †) (podepsaný) |
|
Object(třída) |
4 bajty na 32bitovou platformu 8 bajtů na 64bitovou platformu |
Každý typ lze uložit v proměnné typuObject |
|
1 bajt |
-128 až 127 (podepsaný) |
||
Krátké (krátké celé číslo) |
2 bajty |
-32 768 do 32 767 (podepsaný) |
|
Jeden (jednoduchou přesností a plovoucí desetinnou čárkou) |
4 bajty |
-3.4028235E + 38 - 1, 401298E-45 † pro záporné hodnoty; 401298E-45 až 3.4028235E + 38 † pro kladné hodnoty |
|
Řetězec (délky) |
String(třída) |
Závisí na implementaci platformy |
0 na přibližně 2 miliardy znaků Unicode |
4 bajty |
0 až 4 294 967 295 (bez znaménka) |
||
8 bajtů |
0 až 18,446,744,073,709,551,615 (1.8... E + 19 †) (bez znaménka) |
||
Uživatelem definované (struktura) |
(dědí z ValueType) |
Závisí na implementaci platformy |
Každý člen struktury má rozsah zakládá jeho datový typ a nezávislých oblastí ostatních členů |
2 bajty |
0 až 65 535 (bez znaménka) |
† v Matematický zápis, "E" se vztahuje k násobkem 10.Tak 3.56E + 2 znamená 3.56 x 102 nebo 356 a 3.56E-2 označuje 3.56 / 102 nebo 0.0356.
[!POZNÁMKA]
Řetězce obsahující text, použijte StrConv funkci, kterou chcete převést z jednoho formátu do druhého.
Navíc při určování typu v příkazu deklarace, můžete vynutit datový typ některých programovací prvky pomocí znaků typu.Viz téma Znaky typu (Visual Basic).
Spotřeba paměti
Při deklaraci základní datový typ není bezpečné předpokládat, že jeho paměťové nároky je stejná jako jeho rozdělení nominální úložiště.Je to způsobeno následující skutečnosti:
Přiřazení úložiště. Společný jazykový modul runtime můžete přidělit úložiště založené na aktuální vlastnosti platformy, na kterém se provádí aplikace.V případě, že paměť je téměř zaplněna, jej může dohromady co nejvíce pack deklarované elementů nejvíce.V ostatních případech je pravděpodobně zarovnat jejich adresy paměti fyzické hardwarové hranice za účelem optimalizace výkonu.
Šířka platformy. Přiřazení úložiště na 64bitovou platformu se liší od přiřazení na 32bitovou platformu.
Složené datové typy
Úvahy platí pro každého člena složený datový typ, například strukturu nebo matice.Nemůžete spoléhat na jednoduše sečtením přidělení úložiště nominální členů tohoto typu.Kromě toho existují další aspekty, jako je například následující:
Režijní náklady. Některé složené typy mají dalších požadavků na paměť.Například pole používá dodatečnou paměť pro pole sám a také pro každou dimenzi.Na 32bitové platformě toto zatížení je aktuálně 12 bajtů plus 8 bajtů pro každou dimenzi.Na 64bitové platformě se zdvojnásobí tento požadavek.
Rozložení úložiště. Nelze předpokládat bezpečně pořadí úložiště v paměti je stejný jako vaše objednávka prohlášení.Nemůžete dokonce předpoklady o bajt zarovnání, například hranice 2 byte nebo 4 bajt.Pokud definujete třídu nebo strukturu a je nutné určit rozložení úložiště ze svých členů, je možné použít StructLayoutAttribute atribut třídy nebo struktury.
Objekt režie
Object Vztahující se k libovolným datům elementární nebo složený typ používá 4 bajty kromě údajů obsažených v datovém typu.
Viz také
Referenční dokumentace
Funkce pro převod typů (Visual Basic)
Souhrn konverze (Visual Basic)