Sobes.tech
Junior — Middle

Կարո՞ղ է, որ մի օբյեկտ միաժամանակ մի քանի հղում ունենա:

sobes.tech AI

Պատասխան AI-ից

Այո, iOS-ում (Swift և Objective-C-ում) մի օբյեկտ կարող է ունենալ միաժամանակ մի քանի հղումներ: Սա սովորական իրավիճակ է, երբ մի քանի փոփոխականներ կամ հատկություններ հղում են անում նույն դասի օրինակին: Կարևոր է հասկանալ, որ օբյեկտի կյանքի ցիկլի կառավարումը կատարվում է հղումների հաշվարկով (ARC — Automatic Reference Counting): Օբյեկտը կմնա գոյություն ունենալու այնքան ժամանակ, քանի դեռ կա առնվազն մեկ ուժեղ հղում: Օրինակ՝

class Person {}

let person = Person()  // առաջին ուժեղ հղում
let anotherReference = person  // երկրորդ ուժեղ հղում

Այստեղ person և anotherReference հղում են անում նույն Person օբյեկտին: Օբյեկտը կհեռացվի հիշողությունից միայն այն ժամանակ, երբ երկու հղումները դադարեն գոյություն ունենալ կամ զրոյացվեն։