| 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());
}