Junior — Middle
Czy możesz wyjaśnić koncepcję typów danych referencyjnych?
sobes.tech AI
Odpowiedź od AI
Typy danych referencyjnych w C# to typy, które nie przechowują danych samych w sobie, lecz odwołanie do obszaru pamięci, w którym te dane się znajdują.
Główne cechy:
- Przy przypisaniu zmiennej typu referencyjnego, kopiowane jest odwołanie, nie obiekt.
- Kilka zmiennych może odwoływać się do tego samego obiektu.
- Zmiany dokonane przez jedno odwołanie są widoczne we wszystkich innych.
Przykłady typów referencyjnych: klasy (class), łańcuchy (string), tablice, delegaty.
Przykład:
class Person { public string Name; }
Person p1 = new Person { Name = "Иван" };
Person p2 = p1; // p2 odwołuje się do tego samego obiektu
p2.Name = "Пётр";
Console.WriteLine(p1.Name); // Wyświetli "Пётр"
Widać tutaj, że zmiana przez p2 wpływa na p1, ponieważ obie zmienne odwołują się do tego samego obiektu.