enum
2014-02-26 09:02
405 查看
1、enum用法
枚举类型是一种非常特殊的类型,它的值包含在一个命名的常量集合中,这些常量称为枚举符。
枚举说明符:
enum 标识符 {枚举符表}
enum 标识符
枚举符表中的标识符声明为int类型的常量,它们可以用在常量可以出现的任何地方。
如果其中不包括带有=的枚举符,则相应常量值从0开始,且枚举常量值从左至右一次递增1。
如果其中包括带有=的枚举符,则该枚举符的值该由表达式制定,其后的标识符的值从该值开始依次递增。
同一作用域中的各枚举符的名字必须互不相同,也不能与普通变量名相同,但其值可以相同。
/* 其中Sun = 0,后面依次递增1 */
enum WeekDay{Sun, Mon, Tue, Wed, Thu, Fri, Sat};
WeekDay day = Tue;
/* 其中Mon = 1, Tue = 2, Thu = 4, Fri = 5 */
enum WeekDay{Mon = 1, Tue, Thu = 4, Fri};
2、enum与#define
(1)enum 与#define都可以定义常量
enum 可以进行类型检测,也可以使用Switch;#define只是进行简单的文本替换。
所以尽量使用enum来定义常量。
enum WeekDay{Sun, Mon, Tue, Wed, Thu, Fri, Sat};
替换下面#define声明
#define Sun 0
#define Mon 1
#define Tue 2
#define Wed 3
(2)文件编译只能使用#define
#ifndef XXXX
#define XXXX
#endif
本人现经营一个微信订阅号如下:欢迎大家关注,获取更多相关内容。
订阅号账号是:begginghard_zgh
订阅号名称是:读书笔记 By 张光辉
枚举类型是一种非常特殊的类型,它的值包含在一个命名的常量集合中,这些常量称为枚举符。
枚举说明符:
enum 标识符 {枚举符表}
enum 标识符
枚举符表中的标识符声明为int类型的常量,它们可以用在常量可以出现的任何地方。
如果其中不包括带有=的枚举符,则相应常量值从0开始,且枚举常量值从左至右一次递增1。
如果其中包括带有=的枚举符,则该枚举符的值该由表达式制定,其后的标识符的值从该值开始依次递增。
同一作用域中的各枚举符的名字必须互不相同,也不能与普通变量名相同,但其值可以相同。
/* 其中Sun = 0,后面依次递增1 */
enum WeekDay{Sun, Mon, Tue, Wed, Thu, Fri, Sat};
WeekDay day = Tue;
/* 其中Mon = 1, Tue = 2, Thu = 4, Fri = 5 */
enum WeekDay{Mon = 1, Tue, Thu = 4, Fri};
2、enum与#define
(1)enum 与#define都可以定义常量
enum 可以进行类型检测,也可以使用Switch;#define只是进行简单的文本替换。
所以尽量使用enum来定义常量。
enum WeekDay{Sun, Mon, Tue, Wed, Thu, Fri, Sat};
替换下面#define声明
#define Sun 0
#define Mon 1
#define Tue 2
#define Wed 3
(2)文件编译只能使用#define
#ifndef XXXX
#define XXXX
#endif
本人现经营一个微信订阅号如下:欢迎大家关注,获取更多相关内容。
订阅号账号是:begginghard_zgh
订阅号名称是:读书笔记 By 张光辉
相关文章推荐
- c++ 尽量不要使用#define 而是用const、enum、inline替换。
- mysql之set与enum的介绍
- C语言编程技巧 关于const和#define的区别心得
- 一个运用enum类型的Demo
- enum实现单例模式
- enum VARENUM
- 小谈Java Enum的多态性
- typedef与define在用法上的区别
- Java的Enum用法记录
- java的enum应用
- 斐波纳契数列不同实现比较
- C程序设计语言练习题之 2-2
- 959a C程序设计语言第33页2.7节提到的atoi程序
- enum数据类型
- java枚举类
- #ifndef#define#endif的用法(整理)
- enum枚举类型赋值之switch语句与显示类型转换(Explicit Type Conversion)速度之比较
- Java贪食蛇编程日志(一) 随即产生Enum元素的Bug
- java enum的用法
- 枚举enum、NS_ENUM 、NS_OPTIONS