在c++中類的析構函數前面加一個 virtual 這樣析構函數也會繼承給子類 但是我試了一下 發現不加virtual 析構函數也會繼承下去。這樣的話virtual還有什么用呢 ??
1 回答

UFO的青春
TA貢獻2條經驗 獲得超1個贊
virtual加在父類就可以被繼承下去,其子類的析構函數前編譯器編譯時會默認加上的。一般為了書寫規范,會在子類前也加上virtual。如果連父類的virtual都不加的話,用父類的指針或引用是無法操作子類相應的成員函數的,也就是如果用堆實例化,將無法釋放子類內存,造成內存泄漏
- 1 回答
- 0 關注
- 1656 瀏覽
添加回答
舉報
0/150
提交
取消