在 Swift 中,我有一个名为 managedObjectContext: NSManagedObjectContext
的计算属性。当我尝试像这样初始化它时:
var managedObjectContext: NSManagedObjectContext? {
get {
createManagedObjectContext()
return self.managedObjectContext
}
set(newManagedObjectContext) {
self.manageObjectContext = newManagedObjectContext
}
}
func createManagedObjectContext() -> NSManagedObjectContext {
if let coordinator = persistentStorageCoordinator() as NSPersistentStoreCoordinator!
{
self.managedObjectContext = NSManagedObjectContext()
self.managedObjectContext!.persistentStoreCoordinator = coordinator
NSNotificationCenter.defaultCenter().addObserver(self, selector: "handleBackgroundMOCDidSaveNotification:", name: NSManagedObjectContextDidSaveNotification, object: self.managedObjectContext)
}
return self.managedObjectContext!;
}
我收到一条错误消息:无法自行分配给“managedObjectContext”
。
谁能帮忙解决这个问题?
提前致谢。
最佳答案
当您尝试为 let
常量赋值时,您也会收到此编译错误。在这种情况下,将变量的类型更改为 var
应该可以解决问题。
关于 swift : Cannot assign to "" in self,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24603064/