Sobes.tech
Junior — Middle

Môžete vysvetliť, čo je referenčný typ údajov?

sobes.tech AI

Odpoveď od AI

Typ referenčného typu je typ, ktorého premenné neukladajú samotné údaje, ale odkaz (ukazovateľ) na oblasť pamäte, kde sa tieto údaje nachádzajú. Napríklad v Swift sú triedy referenčné typy. To znamená, že pri priraďovaní alebo odovzdávaní objektu triedy sa kopíruje iba odkaz na rovnaký inštanciu, nie samotný objekt.

Príklad:

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

let person1 = Person(name: "Иван")
let person2 = person1
person2.name = "Петр"
print(person1.name) // Vypíše "Петр", pretože person1 a person2 odkazujú na ten istý objekt

Toto sa líši od typov hodnoty (napríklad štruktúr), kde sa kopíruje samotný objekt.