关于enum变量的取值范围
#include<iostream.h>
int main()
{
enum flag {x=1,y=2,z=4,e=8};
flag f=flag(99);
cout<<f<<endl;
return 0;
}
这段程序编译成功并且运行结果是:99
可是flag变量的取值范围不应该是:0-15么?搞不懂了:(
2楼,你没理解LZ的意思,书上也是这样说的,如果元素都是正,范围是[0:2^k-1]
按道理那是错误的。
至于原因,我也不知道,不过似乎不是2楼说的那样啊