Sobes.tech
Junior — Middle

Lehetséges, hogy egy objektumnak több hivatkozása legyen egyszerre?

sobes.tech MI

Válasz az MI-től

Igen, az iOS-en (mind Swift, mind Objective-C esetén) egy objektumnak több hivatkozása lehet egyszerre. Ez egy gyakori helyzet, amikor több változó vagy tulajdonság ugyanarra az példányra hivatkozik. Fontos megérteni, hogy az objektum életciklusának kezelése a hivatkozásszámlálás (ARC — Automatic Reference Counting) révén történik. Az objektum addig létezik, amíg legalább egy erős hivatkozás van rá. Például:

class Person {}

let person = Person()  // első erős hivatkozás
let anotherReference = person  // második erős hivatkozás

Itt a person és az anotherReference ugyanarra az Person objektumra mutatnak. Az objektum csak akkor kerül törlésre a memóriából, amikor mindkét hivatkozás megszűnik vagy nullázódik.