C++中关于指定枚举函数值的问题。

教材上以这么一段我们也可以在枚举类型定义时指定枚举元素的值,例如:enumweekday{sun=7,mon=1,tue,wed,thu,fri,sat};这时sun的值... 教材上以这么一段
我们也可以在枚举类型定义时指定枚举元素的值,例如:
  enum weekday{sun = 7,mon = 1,tue,wed,thu,fri,sat};
  这时sun的值是7,mon的值是1,而tue以后各元素的值,从mon的值开始,每次递增1,即tue的值为2,wed的值为3,…。如果不写mon = 1,则mon的值为8,tue的值为9,依此类推。

下面是我的问题:
enum weekday{sun = 3,mon = 1,tue,wed,thu,fri,sat};
上面的sun的值改成3,moon的值还是1,tue以后的数依次递增1,tue的值是2,wed的值不可能是3,因为与sun的值重复了,请问这时wed,thu,fri,sat的值分别为多少?
展开
 我来答
匿名用户
2011-07-19
展开全部
还是3,4,5啊!
枚举变量中的枚举元素系统是按照常量来处理的,故叫枚举常量,他们是不能进行普通的算术赋值,但是你可以在声明的时候进行赋值操作!
但是这里要特别注意的一点是,如果你不进行元素赋值操作那么元素将会被系统自动从0开始自动递增的进行赋值操作,说到自动赋值,如果你只定义了第一个那么系统将对下一个元素进行前一个元素的值加1操作。
enum weekday;
上面的sun的值改成3,moon的值还是1,tue以后的数依次递增1,tue的值是2,wed的值还是3,因为sun和wed只是枚举常量,他们都表示3.
mia☆jiancha☆ce6608
2011-07-16 · TA获得超过1526个赞
知道小有建树答主
回答量:713
采纳率:100%
帮助的人:495万
展开全部
事实上wed值就是3
更多追问追答
追问
那么sun的值是多少?
追答
也是3
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-07-16
展开全部
值可以重复的,wed的值就是3。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kaihua1010
2011-07-16 · TA获得超过147个赞
知道小有建树答主
回答量:133
采纳率:0%
帮助的人:112万
展开全部
这个应该可以重复的啊。。。同一枚举表中的枚举符表示的整型数值是可以重复的。。这个不是数学里的集合。也就是说wed的值就是3。
追问
那么weekday=3代表的到底是weekday=wed还是weekday=sun
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wgbxy11235
2011-07-22 · 超过16用户采纳过TA的回答
知道答主
回答量:57
采纳率:0%
帮助的人:48.5万
展开全部
枚举不是set 可以重复的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式