virtual destructor در c++ - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

virtual destructor در c++

+1 امتیاز
چرا باید destructor را به صورت virtual در کلاس پایه تعریف کرد و اگر نکنیم چه مشکلی پیش میاد؟
سوال شده تیر 30, 1397  بوسیله ی ابید (امتیاز 781)   19 89 106

1 پاسخ

+1 امتیاز
 
بهترین پاسخ
وقتی توی هایراکی destructor به صورت virtual تعریف نشده باشه کلاس های upcast شده  هنگام آزاد سازی destructor شان فراخوانی نمیشه فقط destructor کلاس پایه فراخوانی میشه.
پاسخ داده شده تیر 30, 1397 بوسیله ی مصطفی ساتکی (امتیاز 21,998)   24 34 75
انتخاب شد مرداد 25, 1397 بوسیله ی ابید
...