c++ enum 的枚举

之前对C++的enum 一直不是特别清晰,通过一些其他的博客学习了一下,记录一下这种数据类型的特点~

枚举数据类型的目的之一是符号名称有助于使程序自我解释。但是,由于这些名称不是字符串,它们仅在程序中使用。在编码的时候经常与switch 语句配合使用。

enum Roster{Tom = 1,Sharon,Bill,Teresa,John};

通过上面的语句,可以认为Tom 就是1, Sharon 就是2, 但是不能认为1就是Tom,2是Sharon。举数据类型的符号名称与整数值相关联。示例如下:

#include <iostream>
using namespace std;

enum Roster{Tom=4,Sharon,Bill,Teresa,John};

int main()
{
    int who;
    cin>>who;
    switch(who)
    {
    case Tom:
        cout<<"Tom's birthday is Junuary 3n";
        break;
    case Sharon:
        cout<<"Sharon's birthday is April 22n";
        break;
    case Bill:
        cout<<"Bill's birthday is December 19n";
        break;
    case Teresa:
        cout<<"Teresa's birthday is February 2n";
        break;
    case John:
        cout<<"John's birthday is June 17n";
        break;
    default:
        cout<<"Invalid selectionn";
    }
    cout<<Tom+Tom<<endl;
    system("pause");
    return 0;
}  

c++ enum 的枚举

c++不能直接使用int型,C++没有提供枚举类型的迭代器。发现虽然枚举类型的每个元素都是整数,但是++操作后不能赋值给原对象,所以你就把它当成两个类型之间的强制类型转换就好。而且你可以定义常量(如limit)作为枚举中遍历输出的范围限制

for(Roster person=Tom ; person<limit; person=(Roster)(person+1)){ 
    cout<<persn<<" "; // person <= John 
}

原文链接: https://www.cnblogs.com/wsl-hitsz/p/13717978.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    c++ enum 的枚举

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/397473

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年4月10日 上午9:33
下一篇 2023年4月10日 上午9:34

相关推荐