Miembros estáticos implícitamente perezosos en Swift
Acabo de notar questatic
miembros de Swiftstructs
están implícitamentelazy
.
Por ejemplo, esto solo llamará alinit
una vez:
class Baz {
init(){
print("initializing a Baz")
}
}
struct Foo {
static let bar = Baz()
}
var z = Foo.bar
z = Foo.bar
¿Cuál es la razón detrás de esto?
¿Qué pasa si quiero el comportamiento opuesto?