インスタンスを格納した配列をweak化するには
いつもお世話になっております。
複数のインスタンスを配列で管理し、その配列を別クラスで管理したいと考えてます。
循環参照になってしまい解放されない状況になってしまいました。
どのように配列をweakさせれば良いでしょうか?
よろしくお願い致します。
サンプルコード
class Human {
init() {}
deinit { print("deinit Human") }
}
class Home {
var family: [Human?]? // weakしたい
init() {}
deinit { print("deinit Home") }
}
var humanA: Human? = Human()
var humanB: Human? = Human()
var home: Home? = Home()
home!.family = [humanA!, humanB!]
humanA = nil // deinitされない