Кто может обьяснить в чем разница с присванием для опциональной последовательности. Результат один и тот же.
class Person {
let name: String
init(name: String) { self.name = name }
var apartment: Apartment?
deinit { print("\(name) освобождается") }
}
class Apartment {
let unit: String
init(unit: String) { self.unit = unit }
var tenant: Person?
deinit { print("Апартаменты \(unit) освобождаются") }
}
var john: Person?
var unit4A: Apartment?
john = Person(name: "John Appleseed")
unit4A = Apartment(unit: "4A")
john?.apartment = unit4A
dump(john)
john!.apartment = unit4A
dump(john)