What is the output of code given below:
#include < iostream.h >
using namespace std;
class Base {
public:
Base() {
cout << "Base Const";
}
virtual ~Base() {
cout << "Base dest";
}
};
class Derived : public Base {
public:
Derived() {
cout << "Derived Const";
}
~Derived() {
cout << "Derived dest";
}
};
int main() {
Base *b = new Derived();
delete b;
return 0;
}
1
Base Const Derived Const Derived dest Base dest
2
Base Const Derived Const Base dest Derived dest
3
Derived Const Base Const Base dest Derived dest
4
Base Const Derived Const Base dest