swift - 迭代具有无主引用的结构数组会无休止地进行

标签 swift

在我的项目中,我有一个结构,其中包含对类实例的无主引用。尝试遍历这些结构的数组会导致我的应用程序无限循环。但更疯狂的是,我可以循环遍历一个类型为该结构的空数组,它仍然会发生。

我在这个例子中使用了对 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/

相关文章:

ios - NetworkExtension VPN iOS 将蜂窝网络更改为 Wifi

swift - 在不同形状的 Metal 纹理之间复制数据

ios - 使用服务器用户名和密码在 swift 中发布方法

mysql - 是否可以在 GET 请求中返回流利的 child ?

swift - 尝试在 swift 中使用字典执行加法时出错

ios - SwiftUI 中 @GestureState 的显式动画

ios - 生成 Code 39 条码

ios - 如何为本地通知接口(interface)编写适当的测试?

ios - 扩展 UIControl 以分配持久性的启动值

ios - 自定义平面设计 UITabBar