O OSE

Codierungsregeln

Regeln zum Umsetzen von Designs auf C++

Letzte Änderung:2004-11-21

Jede Klasse hat einen Namen und eventuelle Superklassen

Beispiel:

    class PostAdresse : public Adresse {
    ...
    };
  

Jede Klasse hat mindestens einen Konstruktor

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.

Jede Klasse hat genau einen Destruktor

Beispiel:

       virtual ~PostAdresse() {}

Attribute

Beispiel:

           private:
             string _strasse;
             string _ort;
             string _plz;
             string _land;

Accessormethoden je Attribut

Beispiel


        public: 
           virtual string ort() const { return _ort; }
           virtual void setOrt(string ort) { _ort=ort; }

Dateinamen für die Deklaration

Assoziationen

Methoden

Bezeichner