【发布时间】:2016-07-13 07:30:22
【问题描述】:
我试图直接从它的 setter 和 getter 属性中保存和检索内存中的变量,但 getter 导致无限循环并且应用程序崩溃并显示错误消息:
错误:执行被中断,原因:EXC_BAD_ACCESS(代码=2,地址=0x10049b9a0)。 进程已经返回到表达式求值前的状态。
可能是什么原因以及如何正确执行此操作?
class Task {
let memory = NSUderDefaults.standardUserDefaults()
var taskList: [String: Double]{
get {
let savedList = memory.dictionaryForKey("SavedTasksList") as? [String: Double] ?? [String: Double]()
return savedList
}
set (tasks){
memory.setObject(tasks, forKey: "SavedTasksList")
}
}
}
【问题讨论】:
-
什么是内存?您在 NSUserDefaults 中存储数据的代码在哪里?
-
基本上这段代码不会导致死循环。
taskList是如何使用的?
标签: swift nsuserdefaults