列舉型別是由基礎整型數值型別的一組命名常量定義的值型別。
public enum border
那麼,下面的輸出是什麼?
console.writeline(border.top);
console.writeline((int)border.top);
答案分別是:top,0。預設情況下,列舉成員的關聯常數值為型別 int;它們從零開始,並按定義文字順序遞增 1。 可以顯式指定任何其他整數數值型別作為列舉型別的基礎型別。 比如上面的定義可以調整為:
public enum border
那麼,下面的輸出是什麼?
console.writeline(border.top);
console.writeline((int)border.top);
console.writeline((border)15);
答案分別是:top,1,15。如果enum型別調整為下面,那麼又會輸出什麼呢?
[flags]
public enum border
那麼答案是:
top
1top, right, bottom, left
在增加了[flags]位標誌屬性後,那麼就可以表示列舉型別的組合了。這時要求列舉成員的關聯值應該是 2 的冪。
獲取列舉成員的描述資訊。
[flags]
public enum border
/// /// enum擴充套件方法
///
public static class enumex
}return val.tostring();
}}
那麼下面的**又輸出什麼呢?
console.writeline(border.top.getdescription());
console.writeline(((border)3).getdescription());
答案是:
上邊
top, right
enum 在c中的使用 列舉型別)
如果乙個變數你需要幾種可能存在的值,那麼就可以被定義成為列舉型別。之所以叫列舉就是說將變數或者叫物件可能存在的情況也可以說是可能的值一一例舉出來。舉個例子來說明一吧,為了讓大家更明白一點,比如乙個鉛筆盒中有一支筆,但在沒有開啟之前你並不知道它是什麼筆,可能是鉛筆也可能是鋼筆,這裡有兩種可能,那麼你就...
enum 在c中的使用 列舉型別)
如果乙個變數你需要幾種可能存在的值,那麼就可以被定義成為列舉型別。之所以叫列舉就是說將變數或者叫物件可能存在的情況也可以說是可能的值一一例舉出來。舉個例子來說明一吧,為了讓大家更明白一點,比如乙個鉛筆盒中有一支筆,但在沒有開啟之前你並不知道它是什麼筆,可能是鉛筆也可能是鋼筆,這裡有兩種可能,那麼你就...
C 列舉型別enum
關鍵字enum用於宣告列舉,列舉是一種值型別,由許多名字的常量 也叫列舉表 組成。例如 const int monday 0 const int tuesday 1 const sunday 7 可以用c 提供的列舉型別 enum week 列舉中每乙個常量都對應著乙個數值,如果不特別設定,列舉從0...