C++虚析构和纯虚析构
生活随笔
收集整理的這篇文章主要介紹了
C++虚析构和纯虚析构
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
C++虛析構和純虛析構
- 虛析構和純虛析構
- 示例
- 總結
虛析構和純虛析構
多態使用時,如果子類中有屬性開辟到堆區,那么父類指針在釋放時無法調用到子類的析構代碼
解決方式:將父類中的析構函數改為虛析構或者純虛析構
虛析構和純虛析構共性:
- 可以解決父類指針釋放子類對象
- 都需要有具體的函數實現
虛析構和純虛析構區別:
- 如果是純虛析構,該類屬于抽象類,無法實例化對象
虛析構語法:
virtual ~類名(){}
純虛析構語法:
virtual ~類名() = 0;
類名::~類名(){}
示例
class Animal { public總結
以上是生活随笔為你收集整理的C++虚析构和纯虚析构的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 茅台飞天为什么那么贵?
- 下一篇: C++多态案例三-电脑组装