有谁能解释一下neuburg在iOS 9快速基本原理书中的评论吗?
“在语言中有一些小的漏洞:懒惰实例属性不能有setter观察者,也没有延迟let (所以您不能轻松地使一个延迟实例属性只读)。”.尤其是不要偷懒,让自己防止只读能力。
发布于 2016-03-31 16:10:50
来自苹果文件:
您必须始终将惰性属性声明为变量(使用var关键字),因为在实例初始化完成之前,可能无法检索其初始值。在初始化完成之前,常数属性必须始终具有一个值,因此不能将其声明为懒惰。
但是,如果您希望从类/结构中获得一个值lazy,并且希望确保没有人能够写回该值,那么只需使用一个带有返回值的func。或者就像米洛斯说的--一个私人(集)在一个懒惰的财产上。(这不是一回事)所以一切都是可能的。:)
https://stackoverflow.com/questions/36338339
复制相似问题