Как будет устроена память с классом, у которого свойство типа класс

У нас есть 2 класса, и у одного из классов свойство типа класс

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 }
    deinit { print("Apartment \(unit) деинициализируется") }
}

var john: Person?
var unit4A: Apartment?
 
john = Person(name: "John Appleseed")
unit4A = Apartment(unit: "4A")
 
john!.apartment = unit4A

Как будет устроена память? В стеке будет указатель на кучу с классом, там же будет храниться и свойство john.apartment, которое указывает на другое место в куче (unit4) или же создаться отдельный указатель для свойства в стеке?


Ответы (0 шт):