Sobes.tech
Junior — Middle

შეგიძლიათ ჩამოთვალოთ Swift ენის სხვადასხვა სახის მიმთითებლები?

sobes.tech AI

პასუხი AI-სგან

Swift-ში რეფერენციული ტიპები — ეს არის ტიპები, რომელთა ობიექტები გადაეცემა რეფერენციის საშუალებით, არა მნიშვნელობით. Swift-ის ძირითადი რეფერენციული ტიპები:

  • კლასები (class) — ძირითადი რეფერენციული ტიპი. კლასის ობიექტები შექმნილია heap-ში, და ცვლადები ინახავენ მათზე რეფერენციებს.
  • ფუნქციები (closures) — Swift-ში დახურვებიც რეფერენციული ტიპებია, რადგან ისინი შეუძლიათ იპყრონ და შეინახონ გარეგანი ცვლადების რეფერენციები.

კლასებისგან განსხვავებით, სტრუქტურები (struct) და enum-ები (enum) მნიშვნელობის ტიპებია.

კლასის მაგალითი:

class Person {
    var name: String
    init(name: String) {
        self.name = name
    }
}

let person1 = Person(name: "Иван")
let person2 = person1
person2.name = "Пётр"
print(person1.name) // გამოიტანს "Пётр", რადგან person1 და person2 ეხმარებიან ერთ და იმავე ობიექტს