【发布时间】:2019-08-01 04:55:01
【问题描述】:
符合CaseIterable 协议的枚举中的case 顺序是否保证是声明它的顺序?
enum MyEnum: CaseIterable {
case test
case foo
case bar
case play
}
print(MyEnum.allCases)
将打印:
[MyEnum.test, MyEnum.foo, MyEnum.bar, MyEnum.play]
我想知道这个订单是否有保证。
从这个blog可以看出,swift编译器解析的方式,顺序是有保证的。但我找不到任何文件证明这种行为是有保证的并且不会改变。
附:这不是 XYZ 问题的情况。我只是想知道 Swift 中的这种特殊行为。
【问题讨论】: