اولین بار است که به این وب‌سایت می‌آیید. راهنما را مطالعه کنید!
x
موسسه خیریه محک

شهر ریاضی بازی-ریاضی

حذف یک متغیر پویا

0 امتیاز
404 نمایش

برای حذف فضای تخصیص داده شده به متغیر پویا از delete استفاده می‌کنیم. اما گاهی از variable = NULL هم استفاده می‌شه. این کد ضروریه؟

هیچ پژوهش انسانی نمی‌تواند ادعای علمی بودن داشته باشد، مگر این‌که از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)
پرسیده شده پنجشنبه ۸ فروردین ۱۳۹۲ در C++ توسط prodo  

1 پاسخ

0 امتیاز

نخیر ضروری نیست هرچند کار بسیار خوبیه. وقتی یه اشاره‌گر با delete حذف می‌شه به سیستم‌عامل گفته می‌شه که این فضا دیگه در اختیار این برنامه نیست و بقیه‌ی برنامه‌ها می‌تونن از این فضا استفاده کنن.

فرض کنید اشاره‌گر p رو delete کردیم ولی مساوی با NULL نکردیم. در این صورت ممکنه توی برنامه اشتباهاً از این آدرس استفاده کنیم که اخطار دسترسی رو می‌ده.

اما در صورتی که p = NULL رو اجرا کرده باشیم می‌تونیم قبل استفاده از اشاره‌گر اون رو بررسی کنیم

if(p) ...
هیچ پژوهش انسانی نمی‌تواند ادعای علمی بودن داشته باشد، مگر این‌که از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)
پاسخ داده شده چهارشنبه ۱ خرداد ۱۳۹۲ توسط prodo