Object Oriented Programming - C++

Multiple Inheritance - C++

Multiple Inheritance is achieved by creating a new or a derived class from more than one exisiting classes.
The format for multiple inheritance follows the following pattern:

class Derived: access_specifier Base1, access_specifier Base2, ….
{

// Code for the derived class
};

Closer analysis of the above indicates that the class NewlyDerived has two copies of Base.
When a class is derived from more than one base classes, ambiguities can arise when accessing:

Virtual base Classes

To avoid any possibly ambiguity, declare Derived_1, and Derived_2 virtual base classes.

The format for the class derivation follows the following pattern:
(i)

class Derived_1: virtual access_specifier Base {
// Code for the derived class
};

(ii)

class Derived_2: virtual access_specifier Base {
// Code for the derived class
};

(iii)

class NewlyDerived: access_specifier Derived_1, access_specifier Derived_2…. {
// Code for the derived class
};


Demonstrations Programs
Multiple Inheritance: Introduction
Multiple Inheritance: Ambiguities Arising from Several Classes
Multiple Inheritance: Resolving Ambiguities Caused by Several Classes
Multiple Inheritance: Ambiguities Arising from Several Copies of A Base Class
Multiple Inheritance: Resolving Ambiguities Caused by Several Copies of A Base Class
Go To Polymorphism
Go Back to the Schedule