枚举 enum 和 enum class

一 枚举(enum)变量的定义

//1.先定义枚举类型,再定义枚举变量
enum _season
{
    spring,
    summer,
    autumn,
    winter
};

enum _season s;

//2.定义枚举类型的同时定义枚举变量
enum _season
{
    spring,
    summer,
    autumn,
    winter
}s;

//3.省略枚举名称,直接定义枚举变量
enum
{
    spring,
    summer,
    autumn,
    winter
}s;

//4. 给枚举类型取别名
typedef enum gender
{
  MAN,
  WOMAN
}gender_t;  //重定义类型enum gender 为gender_t, 命名习惯加_t,一看就是typedef重定义类型

枚举元素的值取决于定义时各枚举元素排列的先后顺序。默认情况下,第一 个枚举元素的值为 0,第二个为 1,依次顺序加 1

二 enum class 限定作用域

enum class Gender
{
    MAN,
    WOMAN,
    UNKNOW
};

Gender gender = Gender::MAN;  // 使用的时候要加作用域
posted @ 2022-04-22 16:55  荒年、  阅读(309)  评论(0编辑  收藏  举报