Objective C提供了几种声明枚举的方法.它可以通过typedef enum或声明NS_ENUM.NS_ENUM宏将类型名称作为参数,我并不完全理解它的含义.我没有NS_ENUM在官方Apple文档中找到宏的描述.使用enum和有NS_ENUM什么区别?另一个问题是,是否可以使用任何其他类型NS_ENUM而不是NSInteger其相对整数类型?
Sta*_*ash 12
NSHipster提供了一个非常好的帖子,彻底解释了这一点:
http://nshipster.com/ns_enum-ns_options/
引用底线:
这种方法结合了所有上述方法中的最佳方法(enum,typedef enum),甚至为编译器提供了类型检查和switch语句完整性的提示.