**c#中的列舉 **
列舉型別是一種的值型別,它用於宣告一組命名的常數。 (1)列舉的宣告:列舉宣告用於宣告新的列舉型別。 訪問修辭符 enum 列舉名:基礎型別
基礎型別必須能夠表示該列舉中定義的所有列舉數值。列舉宣告可以顯式地宣告 byte、sbyte、short、ushort、int、uint、long 或 ulong 型別作為對應的基礎型別。沒有顯式地宣告基礎型別的列舉宣告意味著所對應的基礎型別是 int。 (2)列舉成員
列舉成員是該列舉型別的命名常數。任意兩個列舉成員不能具有相同的名稱。每個列舉成員均具有相關聯的常數值。此值的型別就是列舉的基礎型別。每個列舉成員的常數值必須在該列舉的基礎型別的範圍之內。 示例:
public enum timeofday:uint
產生編譯時錯誤,原因是常數值 -1、-2 和 –3 不在基礎整型 uint 的範圍內。 (3)列舉成員預設值
在列舉型別中宣告的第乙個列舉成員它的默值為零。
以後的列舉成員值是將前乙個列舉成員(按照文字順序)的值加 1 得到的。這樣增加後的值必須在該基礎型別可表示的值的範圍內;否則,會出現編譯時錯誤。 示例:
public enum timeofday:uint
morning的值為0,afternoon的值為1,evening的值為2。 (4)為列舉成員顯示賦值
允許多個列舉成員有相同的值.
沒有顯示賦值的列舉成員的值,總是前乙個列舉成員的值+1. 示例
public enum number
b的值為2,d的值為2.
注意:以上列舉值都不能超過它的基礎型別範圍。否則會報錯. (5)列舉型別與基礎型別的轉換 基礎型別不能隱式轉換為列舉型別 列舉型別也不能隱式轉換為基礎型別 示例:
public enum number
class test }
(6)system.enum型別
system.enum 型別是所有列舉型別的抽象基類,並且從 system.enum 繼承的成員在任何列舉型別中都可用。
system.enum 本身不是列舉型別。相反,它是乙個類型別,所有列舉型別都是從它派生的。
system.enum 從型別 system.valuetype派生
(7)使用列舉型別 using system;
public enum timeofday
class test }
static void main() }
C 中列舉型別
列舉型別是一種的值型別,它用於宣告一組命名的常數。1 列舉的宣告 列舉宣告用於宣告新的列舉型別。訪問修辭符 enum 列舉名 基礎型別 基礎型別必須能夠表示該列舉中定義的所有列舉數值。列舉宣告可以顯式地宣告 byte sbyte short ushort int uint long 或 ulong ...
C 中列舉型別的作用
c 程式語言作為一種功能強大的語言,對開發人員來說作用是非常大的。不過,其中有很多應用方式還需要我們去不斷的 不斷從中汲取經驗來達到熟練的程度。下面我們就先為大家詳細介紹一下有關c 列舉型別的相關概念。其主要作用就是乙個約定 舉個常用的例子,你要表示星期1 7,你可以用int1 7,但是當你把它作為...
C 中的列舉型別(enum type)
c 中的列舉型別 enum type 列舉型別 enum type 是具有一組命名常量的獨特的值型別。在以下示例中 enum color 宣告乙個名為 color 的列舉型別,該型別具有三個成員 red green 和 blue。列舉具體是怎麼宣告呢?列舉宣告用於宣告新的列舉型別。列舉宣告以關鍵字 ...