标签: swift swift2 lazy-initialization
我意识到懒惰的自执行闭包属性有好处,例如能够引用self。但是,如果不使用self,这样做的缺点是什么:
self
lazy var greeting: String = { return "Hello, there!" }()
与这样的常数相反:
let greeting = "Hello, there!"
除了常量是更短的语法之外,它们似乎都做同样的事情(不可变)。如果使用惰性自执行属性而不是常量,或者有什么不同,有什么根本的缺点?