Answer Posted / munendra kumar
There are three acceptable answers: "Never," "Rarely," and "When the problem domain cannot be accurately modeled any other way."
There are some famous C++ pundits and luminaries who disagree with that third answer, but I will accept it.
Let's digress to consider this issue lest your interview turn into a religious debate. Consider an Asset class, Building class, Vehicle class, and CompanyCar class. All company cars are vehicles. Some company cars are assets because the organizations own them. Others might be leased. Not all assets are vehicles. Money accounts are assets. Real estate holdings are assets. Some real estate holdings are buildings. Not all buildings are assets. Ad infinitum. When you diagram these relationships, it becomes apparent that multiple inheritance is a likely and intuitive way to model this common problem domain. The applicant should understand, however, that multiple inheritance, like a chainsaw, is a useful tool that has its perils, needs respect, and is best avoided except when nothing else will do.
| Is This Answer Correct ? | 0 Yes | 0 No |
Post New Answer View All Answers
What are virtual constructors/destructors?
What are all predefined data types in c++?
Describe linked list using C++ with an example.
What is the best c++ ide?
How would you differentiate between a pre and post increment operators while overloading?
How do I download c++?
What is scope resolution operator in c++ with example?
Explain method of creating object in C++ ?
State the difference between delete and delete[].
Where Malloc(), Calloc(), and realloc() does get memory?
How important is c++?
What is class invariant in c++?
Why is swift so fast?
What is the cout in c++?
What are the benefits of pointers?