A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© xinchenglong 中级黑马   /  2013-8-26 22:22  /  2693 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

定义枚举时,为什么不能是int类型。
而枚举类型的变量可以强转成int类型,这到底是什么意思啊?它们之间存在什么关系吗?

4 个回复

倒序浏览
1. 枚举(enum)实际上是为一组在逻辑上密不可分的整数值提供便于记忆的符号;
2. 按照系统的默认,枚举中的每个元素类型都是int型,且第一个元素删去的值为0,它后面的每一个连续的元素的值按加1递增。
回复 使用道具 举报
枚举和类是同一级别的,它是一种类型,而其中的元素就类似于类的字段或者属性,必须是合法的标示符,
而可以转换为int,是因为int是枚举的基础类型,更多资料请参考http://msdn.microsoft.com/zh-cn/library/vstudio/cc138362.aspx
回复 使用道具 举报
按照系统的默认,枚举中的每个元素类型都是int型,当然不能再为int了
回复 使用道具 举报
枚举的值在定义时是有一个默认编号的,以0开始:
enmu Gender{
        男, --0
        女   --1
}
(int)Gender.男  --> 0
当然也可以强制元素序列从 1 而不是 0 开始:
enmu Gender{
        男 = 1,
        女   --上面的量的基础上加1
}

评分

参与人数 1技术分 +1 收起 理由
赵宗荣 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马