最佳答案
我刚刚注意到 Swift structs
的 static
成员是隐式的 lazy
。
例如,这只会调用 init
一次:
class Baz {
init(){
print("initializing a Baz")
}
}
struct Foo {
static let bar = Baz()
}
var z = Foo.bar
z = Foo.bar
这背后的理由是什么?
如果我想要相反的行为呢?