这两个有什么区别?
var sharedContextA: NSManagedObjectContext {
return CoreDataStackManager.sharedInstantce().managedObjectContext
}
var sharedContextB = {
return CoreDataStackManager.sharedInstantce().managedObjectContext
}()
为了澄清,我已经看到:
var variable: Type {
code
return X
}
但我不知道它的名称或它与前者有何不同:
var variable = {
code
return X
}()
最佳答案
sharedContextA
是一个计算属性。每次调用属性的 getter 时都会计算要返回的值。
sharedContextB
使用闭包为属性分配默认值。闭包在属性所属类型初始化期间执行一次,之后直接读取存储的值。
关于swift - 这两个属性有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34519135/