在采用现代Objective-C指南中,苹果建议使用NS_ENUM宏而不是枚举。我还阅读了NSHipster关于NS_ENUM和NS_OPTIONS的解释。
也许我错过了什么,但我不太明白以下两个片段之间的区别,如果有的话,为什么
也许我错过了什么,但我不太明白以下两个片段之间的区别,如果有的话,为什么
NS_ENUM
是推荐的方法(除了与旧编译器的向后兼容性)。// typedef enum
typedef enum {
SizeWidth,
SizeHeight
}Size;
// typedef NS_ENUM
typedef NS_ENUM(NSInteger, Size) {
SizeWidth,
SizeHeight
};
NS_ENUM
宏的作用吗? - holexNS_ENUM
宏有助于定义枚举的名称和类型,例如在此处定义了名为UITableViewCellStyle的NSInteger类型。枚举类型应该是NSInteger。”唯一不同的地方就是类型。 - Alex Salom