O | OSE |
Letzte Änderung:2004-11-21
Beispiel:
class PostAdresse : public Adresse { ... };
Beispiel:
PostAdresse( string art="", string strasse="", string ort="", string plz="", string land="" ) :Adresse(art), // Superklassenkonstruktor _strasse(strasse), //initialisiere Attribute _ort(ort), _plz(plz), _land(land) { // sonst nichts zu tun }
In diesem Fall ist das auch der Default-Konstruktor weil alle Argumente weggelassen werden können.
Beispiel:
virtual ~PostAdresse() {}
Beispiel:
private: string _strasse; string _ort; string _plz; string _land;
Beispiel
public: virtual string ort() const { return _ort; } virtual void setOrt(string ort) { _ort=ort; }
#ifndef __KLASSE_H__ #define __KLASSE_H__ // damit wird multiple Inclusion verhindert #incude <string> // alle möglichen Utility-Klassen, #incude <list> // die benötigt werden #include "superklasse.h" // Die Klasse(n) von der abgeleitet wird class Class : public Superclass {
}; #endif
typedef list<Adresse*> AdressenListe; ... private: AdressenListe _adressen; //die eigenliche Liste public: void addAdresse(Adresse *adresse) { _adressen.push_front(adresse); // Adresse hinzufügen } void removeAdresse(Adresse *adresse) { _adressen.remove(adresse); // Adresse entfernen } const AdressenListe* adressen() const { return &_adressen; // Adressen zum iterieren holen }
#include <cstdio> // Utility includes #include "postadresse.h" // Declaration der Klasse void PostAdresse::debug() const { printf("PostAdresse(%s):%s %s %s %s\n", art().c_str(),strasse().c_str(),ort().c_str(),plz().c_str(),land().c_str()); }