关闭

枚举类型enum

537人阅读 评论(0) 收藏 举报
分类:
枚举 enum

事先考虑到某一变量可能取的值,尽量用自然语言中含义清楚的单词来表示它的每一个值,这种方法称为枚举方法,
用这种方法定义的类型称枚举类型。

为什么要用?
①限制输入
当我们要为某些属性定义一组可选择的值,单纯的一个个定义,不能将他们关联起来。。而enum就是用来把整数常量聚集起来的
说白了就是限定一种属性可以有的选择,  比如 形状(属性)  限定它只可以是  三角形,圆形,方形。。。(枚举成员)    ;
婚姻情况(属性),限定它只可以有  已婚,离婚,未婚(枚举成员)  

②方便开发和使用,赋值的时候比用数字看起来清晰多了

怎么用?
定义和初始化:
enum modes
{
    modes1,
    modes2,
    modes3
};
默认第一个枚举成员赋值为0,后面比前面大1

特别的:
①可以指定某个枚举成员的值(必须是常量),后面的依次+1
enum modes
{
    modes1=2,
    modes2(=3),
    modes3(=4)
};
②枚举成员值可以是不唯一的
enum modes
{
    modes1=2,        mode4    (=3),
    modes2=3,        mode3    (=4)
};
③枚举相当于另一种数据类型,不能直接用int对其进行赋值(即使它就是int型)
void main()
{
       enum mode
      {
         mode1,
         mode2,
         mode3
      };  

      mode b=mode2;
      mode a=b;            a,b是同一种类型mode,可以互相赋值


      mode a=mode1;    正常情况下的赋初始值


      mode a=(mode)1;  ,用int对其赋值~除非强制转换类型
 
      cout<<a<<endl;
}

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:17664次
    • 积分:360
    • 等级:
    • 排名:千里之外
    • 原创:20篇
    • 转载:4篇
    • 译文:0篇
    • 评论:1条
    最新评论