c++中enum 如何使用(转)

ENUM概况

enum枚举类型是C/C++中的一种数据类型,与struct和class一样是用户自定义的类型,其特点在于enum类型的变量取值是有限的,是可以一一列举出来的。

 

ENUM定义

C++ enum枚举格式:

enum < 枚举类型名> {< 枚举表>};

enum {< 枚举表>}< 变量名表>;

 

第一个C++ enum枚举值对应着一个整型数,通常情况下如果其中的枚举常量没有定义数值,那么第一个枚举值对应着常量值0,然后依次递增,如果第一个枚举常量定义了数值,那么其后的值将随之递增,其中每个常量之间用“,”隔开,而不是“;”,最后一个数值不用符号。

enum bool {false,true};  bool类型就是C++预定义的枚举

 

ENUM举例

 

  1. #include < iostream.h> 
  2.  
  3. void main()  
  4. ...{  
  5. //例1  
  6. enum day...{Sun,Mon,Tue,Wed,Thu,Fri,Sat};//定义一个day的枚举  
  7. day d = Sun; 
    //d只能等于"Sun,Mon,Tue,Wed,Thu,Fri,Sat"中的一个,没有其它值!  
  8. cout< < "value is "< < d< < endl;  
  9.  
  10. //也可以定义多个变量  
  11. enum day...{Sun,Mon,Tue,Wed,Thu,Fri,Sat};  
  12. day d1,d2,d3;  
  13. d1 = Thu; d2 = Sat; d3 = Tue;  
  14. cout< < "d1 && d2 && d3 "< < d1< < " "< < d2< < " "< < d3< < endl;  
  15.  
  16. //例2  
  17. enum ...{Sun,Mon,Tue,Wed,Thu,Fri,Sat} d;  
  18. d = Mon;  
  19. cout< < "value is "< < d< < endl;  
  20.  
  21. //例3  
  22. enum ...{Sun=10,Mon,Tue,Wed,Thu,Fri,Sat} d1,d2,d3,d4;  
  23. d1 = Sun; d2 = Mon; d3 = Tue; d4 = Wed;  
  24. cout< < d1< < " "< < d2< < " "< < d3< < " "< < d4< < endl
    //输出 10 11 12 13  
  25.  
  26. //例4  
  27. enum ...{Sun=10,Mon=1,Tue,Wed,Thu,Fri,Sat} d1,d2,d3,d4;  
  28. d1 = Sun; d2 = Mon; d3 = Tue; d4 = Wed;  
  29. cout< < d1< < " "< < d2< < " "< < d3< < " "< < d4< < endl
    //输出 10 1 2 3  
  30. }  
原文地址:https://www.cnblogs.com/byteHuang/p/7092010.html