枚举类型----笔记

枚举类型是一种用户自定义类型
是由若干个有名字常量组成的有限集合
使程序的可读性增强
定义格式:

enum<枚举类型名>
{
    <枚举元素>[=<整型变量>],
    ...
};

默认第一个枚举元素为0,到n-1。


enum season
{
    spring = 1,
    summer,
    autumn,
    winter
};

spring指定为1,summer = 2,autumn = 3,winter = 4。

enum weekday
{
    Mon = 1,
    Tues,
    Wed,
    Thus,
    Fri,
    Sat,
    Sun = 0
};

Mon = 1, Tues = 2, Wed = 3, Thus = 4, Fri = 5, Sat = 6, Sun =0.


枚举变量的使用:

①season TempS1;
TempS1 = spring;
②enum color{
    Red,
    Yellow,
    Green,
    Blue,
    Black
}c1,c2;
c1 = Green;

枚举变量与整型的关系:
整型值只能显式地转换为一个枚举值,如果转换的结果位于该枚举取值范围之外,则结果是无定义的。

enum e1{
    dark = 1,
    light = 10
};
e1 VAR1 = e1(50);     //无定义
e1 VAR2 = e1(3);      //编译通过

不允许隐式的从整型转换到枚举是因为大部分整型值在特定的枚举里没有对应的表示。
一个枚举类型的sizeof就是某个能够容纳其范围的整型的sizeof,而且不会大于sizeof(int),除非某个枚举子的值不能用int或者unsigned int 来表示。


总结:
①枚举类型适用于switch-case 语句。
②枚举类型不支持cin>>和cout<<(输出其标号)。
③枚举类型之间的比较可以用<、>、<=、>=、==、!=。
④枚举类型可以做函数的返回类型。
⑤枚举是用户自定义类型,可以为它定义自身的操作,如++或者<<。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值