与构造函数刚好不同。如果父类析构函数不被设成virtual,那么会有如下过程。因为父类析构函数不是virtual的,而动态绑定的是子类的对象,父类的析构函数没有在子类的vtbl中出现,因此子类不会去调用父类的析构函数,从而导致子类对象的父类成分没人析构,结果造成资源泄露。
析构函数有必要被virtual
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- 这是《Effective C++》中第7条原则,其内容是在具有多态用途的父类中应该使用virtual析构函数。首先...
- 如果不是因为在上厕所的时候想起这个擦马桶的故事,而特意留心观察了一下马桶的结构,也许我也会被蒙骗一辈子。 这个擦马...