【发布时间】:2017-01-26 14:38:24
【问题描述】:
我正在将一些代码从 Objective-C 翻译成 Swift。
typedef NS_ENUM(NSUInteger, SomeType) {
SomeTypeZero = 0,
SomeTypeOne = 1,
SomeTypeMax = NSUIntegerMax
};
但是 UInt.max 给了我一个编译器错误:“枚举大小写的原始值必须是文字。”
@objc enum SomeType: UInt {
case zero = 0
case one = 6
case max = UInt.max
}
那么这里发生了什么,我该如何翻译它,并具有向后兼容性?
【问题讨论】:
-
所以是因为这些值是在编译时而不是运行时定义的?
标签: objective-c swift enums uint