初始化的优势或区别是什么:
lazy var hintView: HintView = {
let hintView = HintView()
return hintView
}()
而不是简单地使用:
var hintView = HintView()
(HintView
是:class HintView: UIView {}
)
非常感谢您的帮助。
最佳答案
让我们实际操作一下。看截图
我刚刚在 viewDidLoad
中停止了调试器。您可以看到 secondHintView
有内存,因为它对存储不懒惰但是 hintView
仍然是 nil 因为这是一个懒惰的人。一旦您使用/访问惰性变量,就会分配内存。
还有 lazy 应该总是 var。
关于swift - Swift 中惰性变量的优势是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40694691/