在实际编程中,如果有一个swith语句:先写两种让在大家比较一下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
switch(a) { case 0: //。。。 break; case 1: //。。。 break; case 2: //。。。 break; case 3: //。。。 break; } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
switch(a) { case RED: //。。。 break; case YELLOW: //。。。 break; case BLACK: //。。。 break; case BLUE: //。。。 break; } |
这两段代码一看就知道第二段更有可读性,更方便管理。不然像第一段维护时,会发现0是什么,1是什么,还要再去看代码。第二段看了就明白,是RED的时候,YELLOW的时候等。
哪像第二段要怎么才能实现呢?这就是C++里面的枚举的用处。
枚举就是定义一组常量,让这常量看起来更有意义。
1 2 3 4 5 6 7 |
enum Arrow { UP, //默认从0开始 值是整型 DOWN, //1 LEFT, //2 RIGHT }; |
枚举enum和结构还是有不一样的地方,
枚举enum没有新定义类型,结构是一个新类型
这点可以从它们的定义看到,枚举的每个值没有类型,只有名字,结束用“,”
结构类的成员都有自己的类型,有变量名,结束用“;”。
其时枚举enum是整型变量。枚举enum的定义意义,以Arrow类型为例,它的取值只有4个。主要还是为了编程时方便管理,方便阅读,方便理解程序。
运用有非常多,如颜色枚举(enum)、季节枚举(enum)、月份枚举(enum)、星期枚举(enum)、音符枚举(enum)等等。
My brother recommended I might like this website. He was entirely right. This post actually made my day. You cann’t imagine simply how much time I had spent for this information! Thanks!