FSST - Hardwarenahe Programmierung
Erweitern von Methoden der Basisklasse
Bestehende Methoden der Basisklasse erweitern und verwenden:
class DateString : public Date { public: DateString():Date() {} DateString(uint8_t _day, uint8_t _month, uint8_t _year): Date(_day, _month, _year) {} int GetDay() { int d = Date::GetDay(); d++; return d; } };
- Zeile 7: Definieren einer Methode in der abgeleiteten Klasse, deren Name mit einer Methode der Basisklasse identisch ist.
- Zeile 8: Aufruf der Methode der Basisklasse im Anweisungsteil der abgeleiteten Klasse
Um Namenskonflikte zu vermeiden, setzen man vor die Methode den Klassennamen gefolgt von dem Scope-Operator
ACHTUNG: Die neue Methode verdeckt ALLE gleichnamigen Methoden der Basisklasse unabhängig von deren Parameterliste. - Zeile 9: Implementieren der ergänzenden Anweisungen, die vor oder nach dem Aufruf der Methode der Basisklasse in den Code der abgeleiteten Methode eingefügt werden können.
See how it works: DateString