ENUM概況
enum枚舉類型是C/C++中的一種數據類型,與struct和class一樣是用戶自定義的類型,其特點在於enum類型的變量取值是有限的,是可以一一列舉出來的。
ENUM定義
C++ enum枚舉格式:
enum < 枚舉類型名> {< 枚舉表>};
enum {< 枚舉表>}< 變量名表>;
第一個C++ enum枚舉值對應着一個整型數,通常情況下如果其中的枚舉常量沒有定義數值,那么第一個枚舉值對應着常量值0,然后依次遞增,如果第一個枚舉常量定義了數值,那么其后的值將隨之遞增,其中每個常量之間用“,”隔開,而不是“;”,最后一個數值不用符號。
enum bool {false,true}; bool類型就是C++預定義的枚舉
ENUM舉例
- #include < iostream.h>
- void main()
- ...{
- //例1
- enum day...{Sun,Mon,Tue,Wed,Thu,Fri,Sat};//定義一個day的枚舉
- day d = Sun;
//d只能等於"Sun,Mon,Tue,Wed,Thu,Fri,Sat"中的一個,沒有其它值! - cout< < "value is "< < d< < endl;
- //也可以定義多個變量
- enum day...{Sun,Mon,Tue,Wed,Thu,Fri,Sat};
- day d1,d2,d3;
- d1 = Thu; d2 = Sat; d3 = Tue;
- cout< < "d1 && d2 && d3 "< < d1< < " "< < d2< < " "< < d3< < endl;
- //例2
- enum ...{Sun,Mon,Tue,Wed,Thu,Fri,Sat} d;
- d = Mon;
- cout< < "value is "< < d< < endl;
- //例3
- enum ...{Sun=10,Mon,Tue,Wed,Thu,Fri,Sat} d1,d2,d3,d4;
- d1 = Sun; d2 = Mon; d3 = Tue; d4 = Wed;
- cout< < d1< < " "< < d2< < " "< < d3< < " "< < d4< < endl;
//輸出 10 11 12 13 - //例4
- enum ...{Sun=10,Mon=1,Tue,Wed,Thu,Fri,Sat} d1,d2,d3,d4;
- d1 = Sun; d2 = Mon; d3 = Tue; d4 = Wed;
- cout< < d1< < " "< < d2< < " "< < d3< < " "< < d4< < endl;
//輸出 10 1 2 3 - }