Junior — Middle
Какими способами осуществляется передача объектов в программе?
sobes.tech AI
Պատասխան AI-ից
iOS-ում օբյեկտները սովորաբար փոխանցվում են ծրագրերում հետևյալ կերպ.
-
Հղումով: դասի օբյեկտները փոխանցվում են հղումով, այսինքն՝ փոխանցվում է հիշողության մեջ օբյեկտի ցուցիչը: Օբյեկտի փոփոխությունները ծրագրի մի մասում արտացոլվում են ամենուր, որտեղ կա այդ օբյեկտի հղում:
-
Արժեքով: Swift-ում կառուցվածքները և ցուցակները փոխանցվում են արժեքով, այսինքն՝ պատճենվում են փոխանցման ժամանակ:
-
Դելեգատների և փակագծերի միջոցով: Օբյեկտները կարող են փոխանցվել դելեգատների (պրոտոկոլների) կամ փակագծերի միջոցով՝ հետկանչեր և տվյալների փոխանցում բարդ բաղադրիչների միջև:
Օրինակ՝ օբյեկտի փոխանցում հղումով:
class Person {
var name: String
init(name: String) {
self.name = name
}
}
func changeName(person: Person) {
person.name = "Նոր անուն"
}
let p = Person(name: "Իվան")
changeName(person: p)
print(p.name) // Տպում է "Նոր անուն"