14.9. Key Point Summary

  • Multiple inheritance allows classes to inherit from more than one base.

  • Multiple inheritance may be either public, private, protected, or a combination.

  • The class definition of a multiply-derived class determines the initialization order of its bases.

  • Multiple inheritance has the potential for ambiguities that should be resolved.

  • Members (functions and data) in a derived class with the same name as base class members dominate all base class versions. Dominance resolves ambiguities; lack of dominance causes ambiguities.

  • Public inheritance and virtual functions combined with multiple inheritance provide polymorphism for multiply-derived objects.

  • There are three structural patterns for multiply-derived classes: distinct base classes, ...

Get Navigating C++ and Object-Oriented Design now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.