Junior — Middle
Můžeš uvést příklad situace, kdy se slabá reference automaticky nastaví na null?
sobes.tech AI
Odpověď od AI
Slabá reference se automaticky zruší, když je objekt, na který odkazuje, uvolněn z paměti (tedy když na něj již nejsou žádné silné odkazy).
Například v iOS s použitím weak odkazu na delegáta:
class ViewController: UIViewController {
weak var delegate: SomeDelegate?
}
Pokud je objekt delegáta zničen (například vystoupí z rozsahu a je uvolněn), delegate se automaticky stává nil. To zabraňuje přístupu k již uvolněnému objektu a pomáhá předcházet chybám a únikům paměti.