对枚举类型(enum)的理解,通过变量名为有限状态空间(可列举)中的每一种状态赋予实际意义;
typedef enum { RB_RED, RB_BLACK } RB_COLOR;
枚举的本质是可数集合的重命名机制(alias),而重命名的目标即为常量可读性的提升。
比如灯的状态,On/Off 显然要比布尔类型的0/1有意义得多;
比如一周七天,显然 Monday-Sunday,要比0-6有意义得多;
我们真正想要从枚举当中获得并非数值,并非字符串,而是可能的情况数,或者说样本空间的大小。
1. enum 与 switch
switch:转换,开关;
enum实现对有限状态空间的状态的标识switch实现对有限状态空间的状态的识别(case one:)与处理;
2. 经典枚举类型按列
描述一个数值的形态
enum AttrType { Unknown, Continuous, Discrete };code(返回值代码)
class MyError { public: enum Code { SUCCESS, WARNING, IO_ERROR, READ_ERROR, WRITE_ERROR }; }; MyError::Code func() { return MyError::Code::SUCCESS; }比较标准
enum cmp_mode { normal, nocase };
最后
以上就是昏睡小刺猬最近收集整理的关于utilities(C++)——枚举的全部内容,更多相关utilities(C++)——枚举内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复