我使用漂亮的新NS_ENUM 尝试在我的 Objective-C iOS 项目中定义一个枚举。
我在类的标题中声明 NS_ENUM,如下所示:
NS_ENUM(int, SomeEnumType){
SomeEnumType1,
SomeEnumType2,
SomeEnumType3,
SomeEnumType4
};
@interface Issue : NSObject
....
我得到编译器警告:
ISO C 禁止前向引用“枚举”类型
现在,如果我将枚举定义为(稍微)较旧的传统方式,如下所示:
typedef enum{
SomeEnumType1,
SomeEnumType2,
SomeEnumType3,
SomeEnumType4
}SomeEnumType;
@interface Issue : NSObject
....
在代码中完全相同的位置,问题就消失了。NS_ENUM 我在做什么错?
编辑:
我通过添加 typedef 来纠正它,但它仍然给出警告。
我已经打开了迂腐的编译器警告。这只是它过于迂腐的情况,还是我缺少正确的方法?