4个回答
展开全部
“给枚举变量赋值时,不能使用整数,workday=2 就是错误的”这句话是指你书中说明(1)中的话,这条语句是在定义之后(即大括号外)出现的。
“但是为什么上面可以black=5“这句话中的black=5是在定义的括号中出现的(属于枚举定义语句),枚举类型必须在定义的时候就赋值。只在此赋值一次。出现在定义外的语句都被认作是对枚举常量的重新赋值。而枚举常量在定义之外只能被当作表达式的右值,赋给其他变量,而不能出现在等号的左侧,因为这样相当于改变常量的值,自然是不正确的。
“但是为什么上面可以black=5“这句话中的black=5是在定义的括号中出现的(属于枚举定义语句),枚举类型必须在定义的时候就赋值。只在此赋值一次。出现在定义外的语句都被认作是对枚举常量的重新赋值。而枚举常量在定义之外只能被当作表达式的右值,赋给其他变量,而不能出现在等号的左侧,因为这样相当于改变常量的值,自然是不正确的。
追答
它的意思是说,既然你已经定义了枚举类型,然后在程序中声明了一个枚举变量,而这个变量的取值是可以变化的,但是只能是你枚举类型定义中所存在的那几种,因为那几种常量在你定义的时候已经确定为常数了,所以你给这个枚举变量赋值后,它自然就成为了有实际值的变量,当然你也可以改变它的值,赋给它其他的那几种,但是因为如果只是将整型数赋给它,编译系统会认为你把整型数而非枚举类型常量赋给它,即使该整型数出现在枚举定义的时候表达式的右侧。自然,如果该整型数根本就没出现在枚举定义括号中,那就更是错误的了。
展开全部
在定义枚举型变量时,以对枚举常量进行数值规定(规定哪个常量是多少值),这就是所谓的赋值!
除去定义操作之外,任何地方在使用枚举常量时,都不能对其进行赋值操作了,它就相当于一个固定数值了,不能再变。
除去定义操作之外,任何地方在使用枚举常量时,都不能对其进行赋值操作了,它就相当于一个固定数值了,不能再变。
更多追问追答
追问
他下面举例说,
给枚举变量赋值时,不能使用整数,workday=2 就是错误的,
但是为什么上面可以black=5呢?
追答
black=5 是在定义时的操作
workday=2在哪里呢?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
常量 的定义是不可改变 枚举常量 你不fuzhi 电脑怎么判别他的量呢?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
按照书上的意思定义的时候即赋值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询