#include <stdio.h>
class Base
{
public:
Base() : pName("Base") {}
~Base()
{
printf("Destructor for %s\n", pName);
}
private:
const char *pName;
};
class Derived : public Base
{
public:
Derived() : pName("Derived") {}
~Derived()
{
printf("Destructor for %s\n", pName);
}
private:
const char *pName;
};
int main()
{
Base *pBaseDerived = new Derived();
delete pBaseDerived;
return 0;
}