In a C++ programming language constructor are called from base class to derived class and destructor are called reverse of constructor means from derived class to base class.
Example: Write a program to show the sequence of execution of constructor and destructor.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | #include <iostream> using namespace std; class A1 { public: A1() // constructor { cout << "Constructor A1" << endl; } ~A1() // Destructor { cout << "Destructor A1"<< endl; } }; class A2: public A1 { // derived class A2 public: A2() // constructor { cout << "Constructor A2"<< endl; }~A2() // Destructor { cout << "Destructor A2"<< endl; } }; class A3: public A2 { // derived class A3 public: A3() // constructor { cout << "Constructor A3" << endl; }~A3() // Destructor { cout << "Destructor A3"<< endl; } }; int main() { A3 ob; } |
Output
1 2 3 4 5 6 | Constructor A1 Constructor A2 Constructor A3 Destructor A3 Destructor A2 Destructor A1 |