swift – var声明后这个花括号块做了什么?
发布时间:2020-12-14 04:43:36 所属栏目:百科 来源:网络整理
导读:我正在看这个 Swift代码: var modelController: ModelController { if _modelController == nil { _modelController = ModelController() } return _modelController!}var _modelController: ModelController? = nil 我感兴趣的是第一行:它声明了一个名为m
我正在看这个
Swift代码:
var modelController: ModelController { if _modelController == nil { _modelController = ModelController() } return _modelController! } var _modelController: ModelController? = nil 我感兴趣的是第一行:它声明了一个名为modelController的变量,类型为ModelController,后面是一些用花括号括起来的代码,我认为在Swift中称为闭包. 这个闭包有什么作用?什么时候执行?这种模式叫什么?我正在使用Swift 3. 解决方法
这称为
computed property.您在这里看到的是一种只读的计算属性.
每次访问属性(在本例中为self.modelController)时,闭包都会运行,返回将用于属性的值. 在给出的示例中,代码检查是否设置了另一个变量_modelController,如果没有则设置它,然后返回该值.这是第一次访问对象时延迟加载对象的方法. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |