Sobes.tech
Junior — Middle

Felsorolnád a Swift nyelv különböző referencia típusait?

sobes.tech MI

Válasz az MI-től

Swiftben a referencia típusok olyan típusok, amelyek objektumai referencia szerint kerülnek átadásra, nem érték szerint. A Swift fő referencia típusai:

  • Osztályok (class) — a fő referencia típus. Az osztályobjektumokat a heap-ben hozzák létre, és a változók referenciákat tárolnak rájuk.
  • Függvények (closures) — a Swiftben a zárványok szintén referencia típusok, mivel külső változókra vonatkozó referenciákat foghatnak és tárolhatnak.

Az osztályoktól eltérően a struktúrák (struct) és az enumerációk (enum) érték típusok.

Osztálypélda:

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

let person1 = Person(name: "Иван")
let person2 = person1
person2.name = "Пётр"
print(person1.name) // Kiírja "Пётр", mivel a person1 és a person2 ugyanarra a objektumra hivatkozik