Postupy: Deklarace výčtů (Visual Basic)
Vytvoříte výčet s příkazem Enum
v části deklarací třídy nebo modulu. Nelze deklarovat výčet v rámci metody. Chcete-li určit odpovídající úroveň přístupu, použijte Private
, Protected
, Friend
, nebo Public
.
Typ Enum
má název, podkladový typ a sadu polí, z nichž každý představuje konstantu. Název musí být platný kvalifikátor .NET jazyka Visual Basic. Základní typ musí být jedním z celočíselného typu ,Byte
Short
Long
nebo Integer
. Integer
je výchozí možnost. Výčty jsou vždy silného typu a nejsou zaměnitelné s celočíselnými typy.
Výčty nemohou mít hodnoty s plovoucí desetinou čárkou. Pokud je výčtu přiřazena hodnota s plovoucí desetinou čárkou s Option Strict On
, dojde k chybě kompilátoru. Pokud Option Strict
ano Off
, hodnota se automaticky převede na Enum
typ.
Informace o názvech a použití Imports
příkazu k nepotřebné kvalifikaci názvů najdete v tématu Výčty a kvalifikace názvů.
Deklarace výčtu
Napište deklaraci, která obsahuje úroveň přístupu kódu,
Enum
klíčové slovo a platný název, jako v následujících příkladech, z nichž každá deklaruje jinouEnum
.Private Enum SampleEnum SampleMember End Enum Public Enum SampleEnum2 SampleMember End Enum Protected Enum SampleEnum3 SampleMember End Enum Friend Enum SampleEnum4 SampleMember End Enum Protected Friend Enum SampleEnum5 SampleMember End Enum
Definujte konstanty v výčtu. Ve výchozím nastavení je první konstanta ve výčtu inicializována na
0
a následné konstanty jsou inicializovány na hodnotu jedné více než předchozí konstanty. Například následující výčet obsahujeDays
konstantu s názvemSunday
s hodnotou0
, konstantu pojmenovanou s hodnotou , konstantu sMonday
názvem ,1
konstantu s názvemTuesday
s hodnotou2
atd.Public Enum Days Sunday Monday Tuesday Wednesday Thursday Friday Saturday End Enum
Hodnoty můžete explicitně přiřadit konstantám v výčtu pomocí příkazu přiřazení. Můžete přiřadit libovolnou celočíselnou hodnotu včetně záporných čísel. Můžete například chtít, aby konstanty s hodnotami menšími než nulou představovaly chybové podmínky. V následujícím výčtu je konstanta
Invalid
explicitně přiřazena hodnotu–1
a konstantaSunday
je přiřazena hodnotu0
. Protože je to první konstanta v výčtu,Saturday
je také inicializována na hodnotu0
. HodnotaMonday
je1
(jedna více než hodnotaSunday
); hodnotaTuesday
je2
atd.Public Enum WorkDays Saturday Sunday = 0 Monday Tuesday Wednesday Thursday Friday Invalid = -1 End Enum
Deklarace výčtu jako explicitního typu
Zadejte typ výčtu pomocí
As
klauzule, jak je znázorněno v následujícím příkladu.Public Enum MyEnum As Byte Zero One Two End Enum