macos - 在 Swift 中使用核心数据时出现错误的访问信号

标签 macos core-data swift

我有一个 OS X 应用程序,它使用 Swift 使用默认的 Core Data 模板。

我已经将一个 NSArrayController 对象添加到停靠栏并将它的 Managed Object Context 绑定(bind)到 App Delegate 的 managedObjectContext

然而,当应用程序运行时,这会导致“EXC_BAD_ACCESS (code=1,address=0x0)”信号出现在这行代码中

let coordinator = self.persistentStoreCoordinator

当我对 Objective-C 程序执行相同的步骤时,我没有遇到这个问题,所以我猜这与 Swift 有关。有谁知道如何解决这个问题?

我在 Yosemite 上使用最新的 Xcode 6.1 Beta。

最佳答案

persistentStoreCoordinator 是 AppDelegate 中的一个 lazy 变量。这意味着它会在程序执行时第一次需要时进行评估和初始化。

在您的 AppDelegate 类中搜索

lazy var persistentStoreCoordinator: NSPersistentStoreCoordinator? = {
    ...
}

并在开头打断点。然后单步执行代码以检查错误发生的位置,以获得有关问题所在的更多信息。

关于macos - 在 Swift 中使用核心数据时出现错误的访问信号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25926094/

相关文章:

ios - Swift 中的 UIWebView : exc_bad_access

swift - 返回上一个 View Controller 时的 UIImage 问题

swift - MacOS使用KVO执行多次执行

objective-c - 如何以编程方式获取 MacBook 的型号?

swift - 如何在 Swift 3 中消除警告

ios - 核心数据错误 : nil is not a legal NSManagedObjectContext parameter

arrays - 将返回类型更改为小数?

excel - 使用动态数组存储和粘贴值

php - zenddebugger 不适用于 mac osx mavericks for php Aptana

multithreading - 第二个内存中存储作为缓存