枚举属性

关键字 枚举 标识枚举类型。

enum [tag ] 
{ 
    identifier [=integer-value ] 
    [ , ... ] 
}

参数

标记

指定枚举类型的可选标记。

identifier

指定特定枚举。

integer-value

指定常量整数值。

注解

枚举 类型可以在 typedef 声明、常规声明和函数声明符中显示为类型说明符, (函数返回类型或参数类型说明符) 。 有关显示类型说明符的上下文,请参阅 接口定义 (IDL) 文件

在 MIDL 编译器的默认模式下,可以将整数值分配给枚举器。 (使用 /osf switch.) 与 C 语言枚举器一样编译此功能时,枚举器名称必须是唯一的,但枚举器值不需要。

如果未提供赋值运算符,则标识符从左到右映射到连续整数,从零开始。 提供赋值运算符时,分配的值从最近分配的值开始。

最大标识符数为 65,535。

类型 枚举 的对象是 int 类型,其大小依赖于系统。 默认情况下,枚举类型的对象在通过网络传输时被视为类型为 unsignedshort 类型的 16 位对象。 超出范围 0 - 32,767 的值会导致运行时异常RPC_X_ENUM_VALUE_OUT_OF_RANGE。 若要将对象作为 32 位实体传输,请将 [v1_enum] 属性应用于 枚举 typedef。

示例

typedef enum {Monday=2, Tuesday, Wednesday, Thursday, Friday} workdays; 
 
typedef enum {Clemens=21, Palmer=22, Ryan=34} pitchers;

另请参阅

接口定义 (IDL) 文件

int

typedef

符号

v1_enum