楼主今儿学着的,关于枚举和整型之间转换的简单说明;
C++中,枚举可以自动向整型转换,但是整型不能自动向枚举转换,但是可以通过强制转换将整型转换为枚举;
enum Suit{Spade=0,Heart,Diamond,Club};
Suit s=Heart;
int i;
i=s;//合法,此时枚举类型课自动向整型转换,相当于i=1
i=Heart;//合法
而对于
i=2;
s=i;//此时在C++中是错误的
s=Suit(i);//强制转换类型,正确
楼主今儿学着的,关于枚举和整型之间转换的简单说明;
C++中,枚举可以自动向整型转换,但是整型不能自动向枚举转换,但是可以通过强制转换将整型转换为枚举;
enum Suit{Spade=0,Heart,Diamond,Club};
Suit s=Heart;
int i;
i=s;//合法,此时枚举类型课自动向整型转换,相当于i=1
i=Heart;//合法
而对于
i=2;
s=i;//此时在C++中是错误的
s=Suit(i);//强制转换类型,正确