前端之家收集整理的这篇文章主要介绍了
ios – 枚举大小写的原始值必须是字面值,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有这个枚举:
enum GestureDirection:UInt {
case Up = 1 << 0
case Down = 1 << 1
case Left = 1 << 2
case Right = 1 << 3
}
但是在每一种情况下我都会收到错误:
Raw value for enum case must be a literal
我没有得到它
Swift 1.2,Xcode 6.3.2
这是因为1< 0不是
文字.您可以使用一个字面值的二进制
文字,并允许在这里:
enum GestureDirection:UInt {
case Up = 0b000
case Down = 0b001
case Left = 0b010
case Right = 0b100
}
枚举只支持每个language grammar的原始值文字,它们是数字字符串(数字)字符串字面量(字符串)或布尔型文字(bool).
相反,作为一种解决方法,仍然表明您正在做什么.
原文链接:https://www.f2er.com/iOS/336316.html