使用了非标准扩展: 限定名中使用了枚举“enum”
当引用类型内的枚举时,无需指定枚举的名称。
文件范围的枚举定义相当于常量,也不需要限定名。
当引用类型内的枚举时,无需指定枚举的名称。
文件范围的枚举定义相当于常量,也不需要限定名。
举例:
struct item
{
enum status {
normal,
focus,
press,
disable
};
CRect rt;
CStringW ico;
};
item *p = new item;
p->sta = item::status::normal;
这样调用的时候,就会出现 warning C4482,注意 文件范围的枚举定义相当于常量,也不需要限定名;
正确的调用方法
item *p = new item;
p->sta = item::normal;