我正在将一些代码从Objective-C翻译成Swift。
@objc enum SomeType: UInt {
case zero = 0
case one = 6
case max = UInt.max
}
然而,UInt.max给了我一个编译器错误:“enum case的原始值必须是文字。”
final String[] words = valText.split(" ");
for (String word : words) {
if (word.startsWith(prefixString)||toNoPalatals(word).startsWith(prefixStringNoPalatals)) {
newValues.add(value);
break;
}
}
}
那么这里发生了什么,我如何翻译它,具有向后兼容性?
答案 0 :(得分:0)
UInt.max是在运行时定义的值。但是,要成为枚举的值,需要在编译时定义值。