Sobes.tech
Junior — Middle

C#-da istinadə və dəyər növü məlumatlarının yaddaşda saxlanma üsulları necə fərqlənir?

sobes.tech Süni İntellekt

AI-dan cavab

C# dilində, int, struct, bool kimi dəyər tipləri yığma (stack) yaddaşında və ya bir referans tipinin sahələri olduqda birbaşa obyekt daxilində saxlanılır. Onlar öz məlumatlarını saxlayır.

Referans tipləri, məsələn, siniflər (class), yığma (heap) yaddaşında saxlanılır. Referans tipli dəyişən, öz məlumatlarını deyil, obyektin məlumatlarının saxlandığı yığma yaddaş sahəsinə (göstərici) istinad edir.

Misal:

int a = 5; // 'a' yığmada 5 dəyərini saxlayır
MyClass obj = new MyClass(); // 'obj' yığmadakı obyektə istinad edir

Beləliklə, dəyər tipləri ötürüləndə dəyər kopyalanır, referans tipləri ötürüləndə isə obyektə olan istinad kopyalanır.