关键字是lazy, 只能是var的变量才能懒加载
lazy var count = 100
lazy var count = {
return 100
}()
//闭包中如果是多行代码就要报错:unable to infer complex closure return type
lazy var count = {
var a = 100
var b = 100
return a+b
}()
解决闭包不能推断返回类型即可,下面三种方法
lazy var count: Int = {
var a = 100
var b = 100
return a+b
}()
lazy var count = {
var a = 100
var b = 100
return a+b
}() as Int
lazy var count = {
() -> Int in
var a = 100
var b = 100
return a+b
}()
本文探讨了Swift语言中懒加载(lazy)的使用方法,重点介绍了如何定义lazy变量,并通过不同方式解决闭包中无法推断返回类型的问题。文章提供了具体的代码示例,包括直接返回值、指定返回类型和使用闭包定义等。
1820

被折叠的 条评论
为什么被折叠?



