【发布时间】:2014-02-08 11:17:21
【问题描述】:
假设我有一个从另一个类继承的类,并且我创建了一个从基类指向派生类对象的指针。现在,如果基类析构函数被定义为虚拟,那么它不会产生任何问题。但是,在我的例子中,基类析构函数没有被声明为虚拟的,所以当我删除这个指针时,它会导致内存泄漏。
如何在不修改基类代码的情况下克服这个问题?
【问题讨论】:
-
显示更多代码。特别是显示破坏数据的代码(不清楚是不是你的)。
-
你可以尝试使用组合而不是继承。
标签: c++ destructor virtual-functions virtual-destructor