タイトルのままです。
少しハマりました。
class A {
var prop: Int {
willSet { print("willSet", prop) }
didSet { print("didSet", prop) }
}
init() {
self.prop = 0
}
convenience init(_ prop: Int) {
self.init()
// convenienceイニシャライザ内で上書きしてもwillSet/didSetは呼ばれない
self.prop = prop
}
}
let a = A() // willSet/didSetは呼ばれない
let aa = A(3) // こちらも呼ばれない