Junior — Middle
Кои референтни типове данни са реализирани в езика C#?
sobes.tech AI
Отговор от AI
В C# типовете данни с референция са типове, които се съхраняват в управляемата купчина, а променливите от такива типове съдържат препратка към обекта, а не самия обект. Основните референтни типове в C#:
- class — класове, например
string, потребителски класове. - interface — интерфейси.
- delegate — делегати, които представляват методи.
- array — масиви, например
int[]. - string — низ, въпреки че изглежда като примитив, това е референтен тип.
Пример:
class Person {
public string Name;
}
Person p1 = new Person();
p1.Name = "Иван";
Person p2 = p1; // p2 и p1 сочат към един и същи обект
p2.Name = "Пётр";
Console.WriteLine(p1.Name); // Ще изведе "Пётр"
Тук се вижда, че при присвояване на променливи от референтни типове, се копира само препратката, а не самият обект.