class A; class B : public A;
とあるときに、
A * a = new B(); delete a;
と単にすると、Bのデストラクタが呼ばれないので注意。 Aのデストラクタをvirtualにする必要がある。