在Swift 4.1中覆盖lazy var的正确方法是什么?以下代码在swift 4.0中正常工作但是由于swift 4.1我在覆盖时有警告,所以我猜它在swift 5中不可用
我曾经:
class A {
lazy var myVar: String = {
return "A"
}()
}
class B: A {
override lazy var myVar: String = { // WARNING Cannot override with a stored property myVar
return "B"
}()
}
Run Code Online (Sandbox Code Playgroud)
我想这是这样的,但它不性感..
class A {
lazy var myVar: String = {
return createMyVar()
}()
func createMyVar() -> String {
return "A"
}
}
class B: A {
override func createMyVar() -> String {
return "B"
}
}
Run Code Online (Sandbox Code Playgroud)