我们知道,用C++开发的时候,用来做基类的类的析构函数一般都是虚函数。可是,为什么要这样做呢?下面用一个小例子来说明:
有下面的两个类:
代码
1 class ClxBase
2 {
3 public:
4 ClxBase() {};
5 virtual ~ClxBase() {};
6
7 virtual void DoSomething() { cout << "Do something in class ClxBase!" << endl; };
8 };
9
10 class ClxDerived : public ClxBase
11 {
12 public:
13 ClxDerived() {};
14 ~ClxDerived() { cout << "Output from the destructor of class ClxDerived!" << endl; };
15