C++ | Inheritance | Question 1

#include<iostream>
   
using namespace std;
class Base1 {
 public:
     Base1()
     { cout << " Base1's constructor called" << endl;  }
};
   
class Base2 {
 public:
     Base2()
     { cout << "Base2's constructor called" << endl;  }
};
   
class Derived: public Base1, public Base2 {
   public:
     Derived()
     {  cout << "Derived's constructor called" << endl;  }
};
   
int main()
{
   Derived d;
   return 0;
}

(A) Compiler Dependent


(B) Base1′s constructor called
Base2′s constructor called
Derived’s constructor called


(C) Base2′s constructor called
Base1′s constructor called
Derived’s constructor called


(D) Compiler Error


Answer: (B)

Explanation: When a class inherits from multiple classes, constructors of base classes are called in the same order as they are specified in inheritance.

Quiz of this Question



My Personal Notes arrow_drop_up

Article Tags :
Practice Tags :



Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.