亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

這個例子為什么沒有虛構函數

這個為什么 沒有加虛構函數

正在回答

5 回答

不是這樣的,寫了析構函數,使用new申請指針再delete會報錯,再定義析構函數的位置
0 回復 有任何疑惑可以回復我~

Student stu;//在棧中實例化Student。內存由系統控制,不需要自己釋放

Student * stup = new Student();//在堆中實例化Student。內存由自己控制,系統不管。

delete stup;//這個時候調用析構函數

stup = NULL;

0 回復 有任何疑惑可以回復我~
#1

WORLD_CONNECTED

沒用定義析構函數的時候,系統自動生成析構函數。 也就是說,如果我們自定義了析構函數,我們將接過系統權限,自己操作析構函數。
2017-12-15 回復 有任何疑惑可以回復我~

虛析構函數適用場景是:繼承關系存在,當使用父類指針指向堆中申請的子類對象,需要銷毀子類及父類對象時,通過虛析構函數能使得delete 父類指針之前,執行子類對象的虛析構函數,進而銷毀子類對象,達到保護內存的目的。 因此關鍵點就是父類指針指向堆中申請的子類對象,如果沒有使用new申請子類對象,就不需要考慮虛析構函數。

0 回復 有任何疑惑可以回復我~

因為這里的類內并沒有涉及到用new從堆中分配內存,所以不寫也沒關系,建議你重新看一下之前關于虛析構函數的視頻,那里有詳細解答

0 回復 有任何疑惑可以回復我~

你這問題描述不太清楚啊,你說的是接口類沒有析構函數?

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
C++遠征之多態篇
  • 參與學習       66224    人
  • 解答問題       334    個

本教程將帶領大家體會面向對象三大特性中的多態特性

進入課程

這個例子為什么沒有虛構函數

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號