Junior — Middle
Какими способами осуществляется передача объектов в программе?
sobes.tech AI
პასუხი AI-სგან
iOS-ში ობიექტები ჩვეულებრივ გადაეცემა პროგრამებში შემდეგი გზებით:
-
გაგზავნა მითითებით: კლასის ობიექტები გადაეცემა მითითებით, ანუ მეხსიერებაში ობიექტის მაჩვენებელი გადაეცემა. ობიექტზე ცვლილებები ერთ ნაწილში პროგრამის, ყველგან გამოჩნდება, სადაც ამ ობიექტის მითითებაა.
-
მნიშვნელობის მიხედვით: Swift-ში სტრუქტურები და enum-ები გადაეცემა მნიშვნელობით, ანუ კოპირებულია გადაცემის დროს.
-
დელეგატებისა და დახურვების საშუალებით: ობიექტები შეიძლება გადაეცეს დელეგატების (პროტოკოლების) ან დახურვების საშუალებით, რათა მოხდეს უკუკავშირი და მონაცემთა გადაცემა კომპონენტებს შორის.
მაგალითი ობიექტის გადაცემის მითითებით:
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) // გამოიტანს "ახალი სახელი"