在可执行的Swift包中运行swift run
时,我遇到以下错误:
zsh: segmentation fault swift run
我已经能够将代码归结为以下内容:
enum MyEnum {
case FirstCase
case SecondCase
case Other
}
struct MyEnumCollection {
private var enums: [MyEnum]
}
extension MyEnumCollection: RangeReplaceableCollection {
public init() {
self.enums = []
}
}
extension MyEnumCollection: Collection {
public var startIndex: Int {
0
}
public var endIndex: Int {
self.enums.count
}
public subscript(position: Int) -> MyEnum {
return self.enums[position]
}
public func index(after i: Int) -> Int {
return self.enums.index(after: i)
}
}
var collection = MyEnumCollection()
collection.append(MyEnum.FirstCase)
分段错误发生在最后一行append
语句处.
有人能帮我理解为什么会发生这种情况,以及我应该如何解决这个问题吗?