Lecture overview -- Keyboard shortcut: 'u'    Next page: Inheritance: Constructors and destructors  -- Keyboard shortcut: 'n'  Lecture notes - all slides and notes together  slide -- Keyboard shortcut: 't'  Help page about these notes  Alphabetic index  Course home  Lecture 4 - Page 1 : 24
Notes about C++
Abstraction Mechanisms, Part 2
Inheritance in C++

Overview of the interesting topics related in inheritance in C++

  • Multiple inheritance

    • More than one superclass (base class) is possible in C++

  • No interfaces in C++

    • Interfaces in Java and C# compensates for the lack of multiple inheritance

  • Virtual functions and pure virtual functions

    • Abstract classes are related to the presence of virtual functions

    • Polymorphic behavior - dynamic binding - relies on access to objects via pointers or C++ references

  • Shared or replicated base classes

    • Shared bases classes are called virtual bases classes

  • Access control to base classes

    • Private, protected and public base classes