求助,关于C++中一个枚举类型的问题

定义如下枚举类型:enum{Monday,Tuesday,Wednesday,Thursday,Friday=2};则下列语句正确的是()A)表达式Wednesday==... 定义如下枚举类型:enum{Monday,Tuesday,Wednesday,Thursday,Friday=2};则下列语句正确的是()
A)表达式Wednesday==Friday的值为true
B)Day day;day=3
C)Day day;day=Monday+3

D)Day day;day=Tuesday+10

这题正确答案选A我能理解,但是BCD是什么意思呢?

我是个刚学C++的新手,麻烦讲的通俗些详细些,谢谢了~
展开
 我来答
csu_臆哥
2013-03-15 · 超过29用户采纳过TA的回答
知道答主
回答量:52
采纳率:0%
帮助的人:42.8万
展开全部
枚举类型不能直接赋数值,只能赋予枚举变量
Day是enum Day {Monday,Tuesday,Wednesday,Thursday,Friday=2};
BCD给day(Day类型变量)赋值。但数值直接赋值必须强制转换 day = (Day)(3+Monday)
这里为什么不把3转换成Day类型进行运算而让我们做转换才行,运算时电脑自动将Day转换成基本类型才知道怎么做
beddy1
2013-03-15 · TA获得超过1989个赞
知道大有可为答主
回答量:2271
采纳率:0%
帮助的人:2204万
展开全部
B、C、D 不正确的原因在于使用数字给枚举类型赋值和对枚举类型进行数字运算。
虽然C++的枚举类型的实现的确是用的整数类型,但是,从概念上它和数字却是两回事。这样使用枚举类型,这样使用枚举的将其优势全部湮灭了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式