C++枚举类型enum使用方法(附带可用代码+通俗易懂)

1.说明
枚举用来表示某类事情的结果;例1:下棋比赛的三种结果,赢,和,输;这里是描述比赛的结果。例2:一周7天中的俩种结果,工作日和非工作日。

2.用法
例1:enum game {win, lose, tie };(win, lose, tie分别表示胜,负,和)。
例2:enum weekday {mon=1, tue, wed, thu, fri, sat, sun,}(花括号里是第一天到第七天)。
深度了解用法:例1中的game是游戏的意思(随意取名);从win开始,win的值是0(因为它排在最前面,再解释就是系统默认的0),然后win右边的lose排在第二个,所以是它的值是win的值加1(0+1=2),以此类推。

3解析如下代码(这个作者也不知道怎么说,得靠聪明的读者自己研究。)
以下是关于例2的代码;(mon设置为1,注意!不设置则默认为零)


#include<iostream> 

using namespace std;

int main()
{

    enum weekday {mon=1, tue, wed, thu, fri, sat, sun,} day; //从1开始
    int k;
    cout<<("请输入今天星期几(1--7):")<<endl;
    cin>>k;
    day = (enum weekday)k;
    switch (day)
    {
    case mon:
    case tue:
    case wed:
    case thu:
    case fri:       cout<<"今天上班\n"<<endl; break;

    case sat:
    case sun:       cout<<"今天休息\n"<<endl; break;

    default:        cout<<"errer\n"<<endl;break;
    }
    return 0;
}

以下是例1的代码(WIN=0 LOSE=1 TIE=2)

#include<iostream> 

using namespace std;

int main()
{

    enum game {WIN, LOSE, TIE} sun;
    int x;
    if (WIN > LOSE && WIN > TIE)
    
        cout << "胜" << endl;
    
    else if(TIE > WIN&& TIE > LOSE)
    
        cout << "平" << endl;
    
    else
        cout << "输" << endl;
        return 0;
}

4 结尾
枚举数据类型常用于表示某个事情的结果!
枚举数据类型常用于表示某个事情的结果!
枚举数据类型常用于表示某个事情的结果!
重要的事情说三遍!
这一节没必要用繁冗的文字来描述,所以字少别介意~

  • 9
    点赞
  • 55
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
C++中的枚举类型enum)是一种用户定义的数据类型,它用于定义一组命名的整数常量。枚举类型的语法如下: ```c++ enum 枚举类型名 { 枚举值1, 枚举值2, ... }; ``` 其中,枚举值可以是任何整数常量,如果没有显式地为枚举值指定值,则第一个枚举值默认为0,后续枚举值依次加1。例如: ```c++ enum Weekday { Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday }; ``` 上述代码定义了一个Weekday枚举类型,其中Monday的值为0,Tuesday的值为1,以此类推。 可以通过以下方式定义枚举值的值: ```c++ enum Weekday { Monday = 1, Tuesday = 2, Wednesday = 3, Thursday = 4, Friday = 5, Saturday = 6, Sunday = 7 }; ``` 上述代码定义了一个Weekday枚举类型,与之前的定义不同的是,这里显式地为每个枚举值指定了值。 枚举类型可以用于定义变量、函数参数、函数返回值等,例如: ```c++ enum Weekday { Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday }; Weekday today = Monday; void printWeekday(Weekday day) { switch (day) { case Monday: cout << "Monday" << endl; break; case Tuesday: cout << "Tuesday" << endl; break; case Wednesday: cout << "Wednesday" << endl; break; case Thursday: cout << "Thursday" << endl; break; case Friday: cout << "Friday" << endl; break; case Saturday: cout << "Saturday" << endl; break; case Sunday: cout << "Sunday" << endl; break; } } Weekday getNextDay(Weekday day) { return static_cast<Weekday>((day + 1) % 7); } ``` 上述代码定义了一个Weekday枚举类型以及一些与之相关的变量和函数。注意,在printWeekday函数中,我们使用了switch语句来根据传入的Weekday枚举值进行不同的操作。在getNextDay函数中,我们使用了static_cast将整数常量转换为Weekday类型。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

技术Aaaaaa.

你的打赏对我来说没有丝毫的用处

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值