【发布时间】:2017-04-01 06:08:45
【问题描述】:
我创建了一个这样的枚举
typedef NS_ENUM(NSInteger, PermissionStages) {
thePermissionNotDetermine = 0,
thePermissionDenied = 1,
theReminderPermissionAllowed = 2,
};
并像这样创建一个变量
PermissionStages PermissionStageVar;
我没有为其分配任何值,但默认情况下,此 variable 具有 PermissionStages enum 第一个值,在本例中为 thePermissionNotDetermine
为什么会这样?
【问题讨论】:
-
这是枚举的默认行为。你知道在计算机科学中 0 与现实世界相比是一个有意义的值。您最好将值 -1 分配给被破坏的案例。
-
初始值可能会有所不同,具体取决于您创建该变量的位置。局部变量不会自动默认为 0。
标签: ios objective-c enums