Sobes.tech
Junior — Middle

Կարող եք բացատրել հղման տվյալների տեսակների կոնցեպցիան?

sobes.tech AI

Պատասխան AI-ից

C# լեզվում ռեֆերանսային տիպերը այն տիպերն են, որոնք չեն պահում տվյալները ինքնին, այլ հղում են դեպի հիշողության տարածք, որտեղ այդ տվյալները գտնվում են:

Հիմնական առանձնահատկությունները՝

  • Երբ ռեֆերանսային տիպի փոփոխականին նշանակվում է արժեք, պատճենվում է հղումը, ոչ թե օբյեկտը:
  • Մի քանի փոփոխական կարող է հղում կատարել նույն օբյեկտին:
  • Մեկ հղումով կատարված փոփոխությունները արտացոլվում են բոլոր մյուսներում:

Ռեֆերանսային տիպերի օրինակներ՝ դասեր (class), տողեր (string), զանգվածներ, դելեգատներ:

Օրինակ՝

class Person { public string Name; }

Person p1 = new Person { Name = "Иван" };
Person p2 = p1; // p2 հղում է նույն օբյեկտին
p2.Name = "Пётр";
Console.WriteLine(p1.Name); // Տպում է "Пётр"

Այստեղ նկատվում է, որ p2-ի միջոցով կատարված փոփոխությունը ազդում է p1-ի վրա, քանի որ երկու փոփոխականներն էլ հղում են նույն օբյեկտին։