class base { public: base() { cout<<"Constructor : Base" <<endl; } virtual ~base() //Base class destructor is defined as virtual { cout<<"Destructor : Base" <<endl; } };
class derived :public base { public: derived() { cout<<"Constructor : Derived" <<endl; } ~derived() { cout<<"Destructor : Derived" <<endl; } };
int main() { base *val=new derived(); delete val; }
|