Junior — Middle
Можете ли да обясните какво е тип данни с препратка?
sobes.tech AI
Отговор от AI
Типът данни с препратка е тип, чиито променливи не съхраняват самите данни, а препратка (указател) към областта на паметта, където се намират тези данни. В Swift, например, класовете са типове с препратка. Това означава, че при присвояване или предаване на обект от клас, се копира само препратката към същия екземпляр, а не самият обект.
Пример:
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 сочат към един и същи обект
Това се различава от типовете стойност (например, структури), където самият обект се копира.