var modelController: ModelController { if _modelController == nil { _modelController = ModelController() } return _modelController!}var _modelController: ModelController? = nil
我感兴趣的是第一行:它声明了一个名为modelController的变量,类型为ModelController,后面是一些用花括号括起来的代码,我认为在Swift中称为闭包.
这个闭包有什么作用?什么时候执行?这种模式叫什么?我正在使用Swift 3.
解决方法 这称为 computed property.您在这里看到的是一种只读的计算属性.每次访问属性(在本例中为self.modelController)时,闭包都会运行,返回将用于属性的值.
在给出的示例中,代码检查是否设置了另一个变量_modelController,如果没有则设置它,然后返回该值.这是第一次访问对象时延迟加载对象的方法.
总结以上是内存溢出为你收集整理的swift – var声明后这个花括号块做了什么?全部内容,希望文章能够帮你解决swift – var声明后这个花括号块做了什么?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)