在我的项目中,我有一个结构,其中包含对类实例的无主引用。尝试遍历这些结构的数组会导致我的应用程序无限循环。但更疯狂的是,我可以循环遍历一个类型为该结构的空数组,它仍然会发生。
我在这个例子中使用了对 NSString 的引用来缩小样本,但使用自定义类没有帮助。
另请注意,此行为仅发生在 64 位设备和模拟器上,而不会发生在 32 位设备和模拟器上。我已经使用 Xcode 6.1、6.1.1 和 6.2 进行了测试。
struct TestStruct {
unowned let reference: NSString
}
let anArray: [TestStruct] = []
for anObject in anArray {
NSLog("This is called endlessly")
}
我做错了什么吗?这不是受支持的安排吗?或者这只是一个我应该报告的快速错误?
最佳答案
正如评论所指出的,这似乎是 Swift 编译器中的一个错误。通过 Apple's Bug Reporter 报告会帮助我们所有人。
关于swift - 迭代具有无主引用的结构数组会无休止地进行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27255895/