如果我有一个带有惰性属性的结构,Swift希望默认的成员初始化器包含该属性,即使它不可设置。
例如:
var lazy = Lazy(id: "MINE", greeting: "goodbye")
斯威夫特要求:
print(lazy.greeting) // "hello"
但忽略了懒惰的输入:
lazy var
我是否理解这是一个Swift错误?
编辑:
正如评论者指出的那样,我认为let
无法设定是错误的。但是,这似乎仍然存在不直观的语义。这样的变量一旦被访问就会有一个值。
同样地,我觉得计算var
属性不包含在成员初始值设定项中,但计算出的{{1}}是。{/ p>