我创造了这样的为什么Objective-C的NS_ENUM变量自动拥有默认值
typedef NS_ENUM(NSInteger, PermissionStages) {
thePermissionNotDetermine = 0,
thePermissionDenied = 1,
theReminderPermissionAllowed = 2,
};
枚举,创建这样
PermissionStages PermissionStageVar;
可变我没有任何值分配给它,而是通过默认为variable
有PermissionStages enum
第一个值,在这种情况下它的thePermissionNotDetermine
为什么这种行为?
这是枚举的默认行为。你知道在计算机科学中0与现实世界相比是一个有意义的价值。您最好为受到破坏的案件指定一个-1的值。 – Adeel
根据创建变量的位置,初始值可能会有所不同。局部变量不会自动默认为0. – dan