首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >斯威夫特-为什么懒散的属性不能很容易地成为只读的

斯威夫特-为什么懒散的属性不能很容易地成为只读的
EN

Stack Overflow用户
提问于 2016-03-31 16:01:26
回答 1查看 762关注 0票数 2

有谁能解释一下neuburg在iOS 9快速基本原理书中的评论吗?

“在语言中有一些小的漏洞:懒惰实例属性不能有setter观察者,也没有延迟let (所以您不能轻松地使一个延迟实例属性只读)。”.尤其是不要偷懒,让自己防止只读能力。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-31 16:10:50

来自苹果文件:

您必须始终将惰性属性声明为变量(使用var关键字),因为在实例初始化完成之前,可能无法检索其初始值。在初始化完成之前,常数属性必须始终具有一个值,因此不能将其声明为懒惰。

但是,如果您希望从类/结构中获得一个值lazy,并且希望确保没有人能够写回该值,那么只需使用一个带有返回值的func。或者就像米洛斯说的--一个私人(集)在一个懒惰的财产上。(这不是一回事)所以一切都是可能的。:)

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36338339

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档