5.1 Ableitung
  • Eine Klasse kann die Komponenten einer anderen Klasse übernehmen und verändern.
  • Die Klasse von der die Komponenten übernommen werden ist die Basisklasse, die erbende Klasse ist die abgeleitete Klasse.
  • Syntax der Deklaration:

        class Abgeleitet: Status Basisklasse1,  Status Basisklasse2 {
             ...
        };

    Wobei der Status beschreibt, wie mit den übernommenen protected- Komponenten verfahren werden soll (public, protected oder private). Der Default ist "private".
  • Für die Zugriffsberechtigungen gilt:
 
public
protected
private
Friend-Funktionen
erlaubt
erlaubt
erlaubt
Member-Funktionen
erlaubt
erlaubt
erlaubt
Abgeleitete Klassen
erlaubt
erlaubt
 
Klassen
erlaubt
 
 
  • Konstruktoren, Destruktoren und der Zuweisungs-Operator (operator=()) werden nicht vererbt .
  • friend-Beziehungen zwischen Klassen werden ebenfalls nicht vererbt.
  • Eine Basisklasse darf nicht mehrfach in einer abgeleiteten Klasse verwendet werden.