Tôi thích cú pháp Swift này; nó rất hữu ích cho nhiều điều: var foo: Bar = Bar() {
willSet {
baz.prepareToDoTheThing()
}
didSet {
baz.doTheThing()
}
}
và tôi rất muố
Khi tôi ghi đè chức năng noise, chức năng sẽ được thay thế bằng chức năng mới. Nhưng khi tôi ghi đè lên một thuộc tính với một người quan sát, giá trị cũ và mới được thực hiện cả hai. Trong sân chơi:
Khi ghi đè trình quan sát didSet của thuộc tính dẫn đến đệ quy, tại sao? class TwiceInt {
var value:Int = 0 {
didSet {
value *= 2
}
}
}
class QuadInt : TwiceInt {