PDA

View Full Version : سوال: یک سوال objectیییی؟



dbdbdb
شنبه 05 تیر 1389, 14:41 عصر
car c;
c=new car();
c.color=blue;

c=new car();
c.color=red;
سوال:ماشینی را که در حالت اول میسازیم بعد د از ایجاد کجا میرود آیا از حافظه پاک میشود آیا زبابه روب این کار رو انجام میدهد
یا به عبارتی خود دات نت وقتی که چیزی نباشه که به اون مکان شی اولی اشاره کنه خود garbage collection اون رو پاک میکنه

amir-yeketaz
شنبه 05 تیر 1389, 14:57 عصر
وقتی شما در ابتدا دارین c رو new میکنین در واقع دارین از c که به عنوان reference ای به شی ساخته شده در حافظه ی heap هست اشاره میکنین ...

حال وقتی دوباره دارین از رفرنس c به یه حافظه ی جدید اشاره میکنین خوب مسلما GC وقتی که دیگه به شی قبلی اشاره ای نیست اون رو از حافظه پاک میکنه ...

حله؟!

موفق باشید ...

persiansoft_amin
یک شنبه 06 تیر 1389, 11:21 صبح
در تکمیل پاسخ دوست گلم باید بگم الان ا همه زبان ها garbage collector را یه جورای پیاده سازی کردند و دارند که فقط ++c از این قضیه استثناست. ++c منطق خودش را داره.:قلب::قلب::قلب: