Sobes.tech
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) // Տպում է "Նոր անուն"