c++枚举怎么用

c++枚举怎么用,第1张

C++中枚举的声明及使用

◆声明

在C++头文件中进行enum的声明,如下:

typedef enum tagConnectionType

{

    CONNECTION_TYPE_INVALID = -1,       //invalid value

    CONNECTION_TYPE_GENERAL = 0,        //General connection

    CONNECTION_TYPE_XMAN,               //Xman connection

    CONNECTION_TYPE_KILL,               //kill 启隐connection

    CONNECTION_TYPE_RESTART,            //restart  connection

}BT_CONNECTION_TYPE

声明的一般用法

声明时一般会规定一个无效值进行起始

   例如CONNECTION_TYPE_INVALID = -1, //invalid value

    有效值是一般以0进行设置,之后的类型值将默认+1

     例如:

     CONNECTION_TYPE_GENERAL = 0

     CONNECTION_TYPE_XMAN = 1

CONNECTION_TYPE_KILL = 2

...

◆使用

使用上级声明的类型BT_CONNECTION_TYPE进行枚举变量的创建,如下所示:

BT_CONNECTION_TYPE  enumConnectionType = CONNECTION_TYPE_INVALID

switch与enum的一般使用,如下所示:

BT_CONNECTION_TYPE  enumConnectionType = CONNECTION_TYPE_INVALID

enumConnectionType = GetBTConnectionType()

switch(enumConnectionType)

{

case CONNECTION_TYPE_GENERAL:

    //执行XXX *** 作

    break

case CONNECTION_TYPE_XMAN:

    //执行XXX *** 作答旁岩

    break

 清御 case CONNECTION_TYPE_INVALID:

    //执行XXX *** 作

    break

default:

    break;

}

晕,你的typedef enum MY_ENUM和后面的MY_ENUM是一样的,那么cl在编译的时候就不知道到宽滑森底是找前面那个MY_ENUM还是后面那个MY_ENUM了,尽管两个的实质上都是指同一个枚举量,但是编译器没有你那么聪明,呵让姿呵,你换个看看,慎亩或者把前面那个MY_ENUM省去不要就行了

GetModuleFileName的第一个参数用 EnumWindows给你返回的 不是NULL EnumWindows返回给回调函数两个参数物配薯,第一个是枚举到的句罩者卖灶柄第二个是自定义的参数.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8192267.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存