IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    [原]win编程实践(3)【c++】-枚举值

    u010255642发表于 2015-11-21 19:16:02
    love 0

    1、 枚举值

     

    //ConsoleApplication1.cpp : 定义控制台应用程序的入口点。

    //

     

    #include "stdafx.h"

    #include <iostream>

     

    using std::cout;

    using std::endl;

    using std::cin;

     

    int main()

    {

        char temp;

        enum Myenum { one = 1,two= '2',three ='3', four='4'};

        enum Myenum z1 = one;

        enum Myenum z2 = two;

        enum Myenum z3 = three;

        enum Myenum z4 = four;

        cout << z1<< endl;

        cout << static_cast<char>(z2) << endl;

        cout << static_cast<char>(z3) << endl;

        cout << z4<< endl;

     

       

        cin >> temp;

        return 0;

    }      

     

    枚举值的默认类型是整数型,最后输出的52是‘4’的ascii码

    1

    2

    3

    52

     

    可以改变枚举值的默认类型。

    比如改为char

     

    //ConsoleApplication1.cpp : 定义控制台应用程序的入口点。

    //

     

    #include "stdafx.h"

    #include <iostream>

     

    using std::cout;

    using std::endl;

    using std::cin;

     

    int main()

    {

        char temp;

        enum class Myenum:char { one='1' ,two,three, four};

        Myenum z1 = Myenum::one;

        Myenum z2 = Myenum::two;

        Myenum z3 = Myenum::three;

        Myenum z4 = Myenum::four;

        cout << static_cast<char>(z1)<< endl;

        cout << static_cast<char>(z2)<< endl;

        cout << static_cast<char>(z3)<< endl;

        cout << static_cast<char>(z4)<< endl;

     

       

        cin >> temp;

        return 0;

    }       



沪ICP备19023445号-2号
友情链接