Sobes.tech
Junior — Middle

Milyen referencia típusok vannak megvalósítva a C# nyelvben?

sobes.tech MI

Válasz az MI-től

C#-ban a referencia típusok olyan típusok, amelyek a kezelt heapen tárolódnak, és ezeknek a típusoknak a változói egy objektumra mutató hivatkozást tartalmaznak, nem magára az objektumra. A fő referencia típusok C#-ban:

  • class — osztályok, például string, felhasználói osztályok.
  • interface — interfészek.
  • delegate — delegáltak, amelyek metódusokat képviselnek.
  • array — tömbök, például int[].
  • string — sztring, bár primitívnek tűnik, referencia típus.

Példa:

class Person {
    public string Name;
}

Person p1 = new Person();
p1.Name = "Иван";
Person p2 = p1; // p2 és p1 ugyanarra az objektumra mutat
p2.Name = "Пётр";
Console.WriteLine(p1.Name); // "Пётр" kiírása

Itt látható, hogy referencia típusok esetén a változók hozzárendelésekor csak a hivatkozás másolódik, nem maga az objektum.