C++中枚举类型的作用

(1)C++中会使用const或者#define定义整型常量,当整型常量有多个且之间的值的全部或部分有递加的时候,定义起来稍显繁琐,此时用枚举类型显得很简洁:

  例如:

  //使用const:

    const int MON =1;

    const int TUE =2;

    const int WED =3;

    const int THU =4;

    const int FRI =5;

    const int SAT =6;

    const int SUN =7;

  //使用#define//定义一个整型变量,为整型变量赋以下值

    #define MON 1

    #define TUE 2

    #define WED 3

    #define THU 4

    #define FRI 5

    #define SAT 6

    #define SUN 7

  //使用枚举//定义一个枚举变量,此变量可能具有多个可能的值,

    typedef enum weekDay{

      MON=1,

      TUE,

      WED,

      THU,

      FRI,

      SAT,

      SUN

      }week_day;

    week_day week=SUN;

注意:枚举类型是一种自定义类型,其形式和定义方法跟struct十分相似:

  定义方法常用的有以下几种:

  a)

    typedef enum weekDay{

      MON=1,

      TUE,

      WED,

      THU,

      FRI,

      SAT=7,

      SUN

      }week_day;

      week_day myWeek;

      myWeek = SAT;

  b)

    enum weekDay{

      MON=1,

      TUE,

      WED,

      THU,

      FRI,

      SAT=7,

      SUN

      };

      weekDay myWeek=SUN;

  c)

    

2)枚举经常跟switch连用:

  

总结:枚举类型相较于#define的优势在于,定义常量简洁易于管理,可以自动赋值且值不相等,类型安全检测。

      

原文地址:https://www.cnblogs.com/wjq13752525588/p/11570735.html