willSet / didSet in init and defer: what gets printed?
Task
final class Counter {
var value: Int = 0 {
willSet { print("willSet", newValue) }
didSet { print("didSet", oldValue, "->", value) }
}
init() {
defer { value = 1 }
value = 2
}
}
let c = Counter()
c.value = 3
The rest of this answer, with code and interview follow-ups, is in the DevPrep app.
Read the full answer in DevPrep