关于枚举
enum director {north=1,west,south,east};enum director p;
假如p的初始是west
我要把p变为下一个south,要怎么写啊?
p++可以吗?
可是电脑在p++那就是过不了
enum director {north=1,west,south,east};
int p=west;
p++ --->south
你的P又不是指向数组,怎么可以这样.
你想的这是错误的概念
enum director {north=1,west,south,east};
//这个相当于定义了3个常量,north=1,west=2,south=3,east=4;
enum director p=west; //声明了一个枚举类型,给其赋值也应该是枚举类型
而,
p++ <=> p=p+1; //注意 1是整形,p是枚举类型怎么能赋值或运算呢
除非强制转换 p=p+(enum director)1 <=> p=south;
你想的这是错误的概念
enum director {north=1,west,south,east};
//这个相当于定义了3个常量,north=1,west=2,south=3,east=4;
enum director p=west; //声明了一个枚举类型,给其赋值也应该是枚举类型
而,
p++ <=> p=p+1; //注意 1是整形,p是枚举类型怎么能赋值或运算呢
除非强制转换 p=p+(enum director)1 <=> p=south;
这样不行呀!