【发布时间】:2012-02-03 20:16:14
【问题描述】:
#include <iostream>
using namespace std;
class base
{
int a;
public:
base() {a =0;}
};
class derv :public base
{
int b;
public:
derv() {b =1;}
};
int main()
{
base *pb = new derv();
delete pb;
}
我在derv 类中没有虚拟析构函数,它只删除derv 对象的基础部分吗?
【问题讨论】:
-
它是需要虚拟析构函数的基类。
-
@Mysticial:詹姆斯有这个。
-
@James,你说基类没有虚函数,但如果我们想继承基类,它必须有一个虚析构函数??
标签: c++ polymorphism dynamic-memory-allocation virtual-destructor