从零开始的枚举

枚举

把一种类型可以等于的值全部列举出来,除此以再赋其它值就是非法的。
注意:这只一种美好的愿望,而实际上为了提高运行速度,编译器并没有做检查,因此枚举变量是可以用整数来赋值的(我猜测枚举就是使用unsigned int模拟的)。
enum Role {STUDENT=3,TEACHER=5,ADMIN=7};
enum Role role = STUDENT;

为什么使用枚举:可以把意义的整数使用一个单词来替代,这样可以提高代码的可读性。

还可以定义匿名枚举:
enum {STUDENT,TEACHER,ADMIN};
printf("%d %d %d\n",STUDENT,TEACHER,ADMIN);

可以给枚举成员赋初始值:
enum Role{STUDENT,TEACHER,ADMIN};
后面的成员逐渐加1。

枚举的值可以放在case语句后面,因此可以确定枚举成员是常量,不可以被赋值。

猜你喜欢

转载自blog.csdn.net/weixin_45050225/article/details/98656022