weak var person = Person(): что напечатает?
Задача
class Person {
var name = "Bill"
func sayHello() {
doAction { [weak self] in
print("Hello my name is \(self?.name)")
}
}
private func doAction(_ closure: @escaping () -> Void) {
DispatchQueue.main.asyncAfter(deadline: .now() + 1) { closure() }
}
deinit { print("Person deiniting") }
}
weak var person: Person? = Person()
person?.sayHello()
person = nil
Продолжение ответа с кодом и уточняющими вопросами интервьюера — в приложении DevPrep.
Полный ответ — в DevPrep