【发布时间】:2016-11-28 15:39:28
【问题描述】:
在需要显示视图之前,我不想初始化视图控制器,所以我将它放在一个惰性变量中,例如:
lazy var foo: NSViewController! = {
let foo = NSViewController()
foo.representedObject = self.representedObject
return foo
}()
// ...
override var representedObject: Any? {
didSet {
if foo != nil {
foo.representedObject = representedObject
}
}
}
self.representedObject 是在foo 被引用之前设置的,但是每次我调用if foo != nil 时,它都会初始化foo:c
我有什么方法可以测试foo 是否已经设置了?
【问题讨论】:
标签: swift lazy-loading lazy-initialization