枚举
什么是枚举?
顾名思义,枚举就是一一列举。将可能的取值都一一列举出来就是枚举。
比如说我们的现实生活中:
①一周的可能取值,从周一到周日,总共7个可能取值
②性别的取值,男,女,保密,总共3种可能取值(当然你也可以再添加一种取值可能,比如说未知,但是添加之后的可能取值仍然是可以一一列举出来的,总共4种可能了)
③月份的可能取值,从一月到十二月,总共12个可能取值
④颜色的可能取值,比如说红橙黄绿青蓝紫
…
如何定义枚举类型呢?
enum Day//星期
{
Mon,
Tues,
Wed,
Thur,
Fri,
Sat,
sun
};
enum sex//性别
{
MALE,
FEMALE,
SECRET
};
enum color//颜色--三原色 rgb
{
RED,
GREEN,
BLUE
};
以上定义的enum Day, enum sex,enum color都是枚举类型。
这些可能取值都是有值的,默认从0开始,一次递增1,当然在定义的时候也可以赋初值,这些值叫做枚举常量。
例如:
enum color//颜色--三原色 rgb
{
RED = 1,
GREEN = 2,
BLUE = 3
};
此时该枚举类型的常量值为1,2,3。
枚举的优点
为什么使用枚举 ?
我们可以使用#define定义常量,为什么非要使用枚举 ?
枚举的优点∶
1.增加代码的可读性和可维护性
2.和#define定义的标识符比较枚举有类型检查,更加严谨。
3.防止了命名污染(封装)
4.便于调试