20

Virtuelle Elementfunktionen

In diesem Kapitel

image  Polymorphismus (alias späte Bindung) verstehen

image  Wie sicher sind polymorphe Nachos?

image  Elementfunktionen in einer Unterklasse überladen

image  Überlegungen zum Polymorphismus

 

Die Anzahl und der Typ der Argumente einer Funktion sind in ihrem vollen oder erweiterten Namen enthalten. Dies versetzt Sie in die Lage, zwei Funktionen denselben Namen zu geben, solange sich ihre erweiterten Namen unterscheiden:

void someFn(int);
void someFn(char*);
void someFn(char*, double);

In allen drei Fällen lautet der Kurzname dieser Funktionen someFn(), dagegen sind ihre erweiterten Namen unterschiedlich. Es obliegt C++, anhand der Argumente herauszufinden, welche Funktion bei einem Aufruf gemeint ist.

Elementfunktionen können überladen werden. Die Anzahl der Argumente, der Typ der Argumente und der Klassenname gehören alle zu dem erweiterten Namen.

Doch durch die Vererbung kommt ein ganz neuer Aspekt ins Spiel. Was passiert, wenn eine Funktion in einer Basisklasse denselben Namen wie eine Funktion in der Unterklasse hat? Betrachten Sie beispielsweise den ...

Get C++ für Dummies, 6., vollständig überarbeitete Auflage 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.