您可以在類別或模組的宣告區段中,使用 Enum 語句建立列舉。 您無法在 方法內宣告列舉。 若要指定適當的存取層級,請使用 Private、 Protected、 Friend或 Public。
類型 Enum 具有名稱、基礎型別和一組字段,每個欄位都代表常數。 名稱必須是有效的 Visual Basic .NET 限定符。 基礎型別必須是其中一個整數型別,Byte或 ShortLongInteger。
Integer 是預設值。 列舉一律為強型別,且無法與整數數位類型互換。
列舉不能有浮點值。 如果將浮點值(帶有 Option Strict On)指定給列舉,會導致編譯時出現錯誤。 如果 Option Strict 為 Off,則值會自動轉換成 型別 Enum 。
如需名稱的相關信息,以及如何使用 Imports 語句不必要地限定名稱,請參閱 列舉和名稱限定性。
宣告列舉
撰寫一個宣告,其中包含程式碼存取層級、
Enum關鍵詞和有效名稱,如以下範例所示,每個範例都宣告不同的Enum。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在列舉中定義常數。 根據預設,列舉中的第一個常數會初始化為
0,而後續常數會初始化為一個以上的值。 例如,下列列舉Days包含名為Sunday的常數,值為0,名為Monday的常數,值為1,名為Tuesday的常數值為2,等等。Public Enum Days Sunday Monday Tuesday Wednesday Thursday Friday Saturday End Enum您可以使用 assignment 語句,明確地將值指派給列舉中的常數。 您可以指派任何整數值,包括負數。 例如,您可能想要值小於零的常數來表示錯誤狀況。 在下列列舉中,常數
Invalid會明確指派值–1,而常數Sunday會指派值0。 因為它是列舉中的第一個常數,Saturday所以也會初始化為 值0。Monday的值是1(比Sunday的值多一),Tuesday的值是2,以此類推。Public Enum WorkDays Saturday Sunday = 0 Monday Tuesday Wednesday Thursday Friday Invalid = -1 End Enum
將列舉定義為特定型別
使用
As子句指定列舉的類型,如下列範例所示。Public Enum MyEnum As Byte Zero One Two End Enum