Junior — Middle
Je možné implementovať dátovú štruktúru s použitím slabých odkazov?
sobes.tech AI
Odpoveď od AI
Áno, v iOS (Swift/Objective-C) je možné implementovať dátové štruktúry s použitím slabých odkazov (weak references). Toto je obzvlášť užitočné na prevenciu cyklických odkazov a únikov pamäti.
Napríklad pri implementácii dvojzávitového zoznamu alebo grafu, kde objekty na seba odkazujú, slabé odkazy umožňujú jednej strane neudržiavať objekt v pamäti, ak na neho nie sú žiadne silné odkazy.
Príklad v Swift:
class Node {
var value: Int
weak var parent: Node? // slabý odkaz
var children: [Node] = []
init(value: Int) {
self.value = value
}
}
Tu je parent slabý odkaz, ktorý zabraňuje cyklu medzi rodičom a deťmi.