Sobes.tech
Junior — Middle

Czy możesz wyjaśnić, czym jest typ danych referencyjnych?

sobes.tech AI

Odpowiedź od AI

Typ danych odwołania to typ, którego zmienne nie przechowują danych samych w sobie, lecz odwołanie (wskaźnik) do obszaru pamięci, w którym te dane się znajdują. W Swift na przykład klasy są typami odwołań. Oznacza to, że podczas przypisywania lub przekazywania obiektu klasy, kopiowane jest tylko odwołanie do tej samej instancji, a nie sam obiekt.

Przykład:

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

let person1 = Person(name: "Иван")
let person2 = person1
person2.name = "Петр"
print(person1.name) // Wypisze "Петр", ponieważ person1 i person2 odwołują się do tego samego obiektu

To różni się od typów wartości (np. struktur), gdzie kopiuje się sam obiekt.