kramann.info
© Guido Kramann

Login: Passwort:










Informatik3
1 Vom_struct_zur_Klasse
..1.1 Vom_struct_zur_Klasse
..1.2 struct_Programm
..1.3 Klassen_Programm
..1.4 Offene_Fragen
..1.5 Historie
..1.6 Objektabstraktion
..1.7 OO_Kundenverwaltung
..1.8 Objektfaehigkeiten
..1.9 Formatierung
..1.10 Motivation
..1.11 Uebung1
..1.12 Uebung2
2 UML
..2.1 Volumenberechnung
..2.2 UML_Klassendiagramm
..2.3 Konstruktor
..2.4 Statische_Variable
3 Strings
..3.1 Klassenbibliotheken
..3.2 stringUML
..3.3 Uebung3
4 Initialisierungen
4 bluej
5 Zeiger_und_Arrays
..5.1 Zeiger
..5.2 Zeiger_und_Funktion
..5.3 Uebung4
6 Vererbung
..6.1 MesswerteUML
..6.2 MesswerteProgramm
..6.3 VererbungsProgramm
..6.4 Vector
..6.5 Uebung
7 Modifikatoren
..7.1 public_Vererbung
..7.2 protected_Vererbung
8 Listen_und_Templates
..8.1 Containertypen
....8.1.1 ListeUML
....8.1.2 ListeProgramm
..8.2 Templates
....8.2.1 Listentemplate
....8.2.2 STLvectorTemplate
..8.3 Uebung5
..8.4 Uebung6
..8.5 Uebung7
9 Java
..9.1 Uebung
..9.2 GettingStarted
..9.3 Animation
..9.4 Hybrid
..9.5 Threads
10 Delegation
11 LayoutProjekt
12 Fenster
13 Uebung
14 Zwischenprojekt
..14.1 Befehle
..14.2 Planung
..14.3 JNI
..14.4 JNIumsetzen
..14.5 Anwendungsklasse
..14.6 GUI01
..14.7 GUI02
15 Rasterlayout
..15.1 Bilder_Packages
..15.2 interfaces
..15.3 ArrayList
..15.4 clone
..15.5 Uebung
16 Nuetzliches
..16.1 Threads
..16.2 Animation
..16.3 RungeKutta
..16.4 Loesungsansatz
..16.5 Internetprogrammierung
....16.5.1 Codegenerierung
....16.5.2 PHP_Programmierung
....16.5.3 PHP_OOP
....16.5.4 Java
17 Algorithmen
..17.1 RungeKutta
..17.2 Loesungsansatz
..17.3 Evoopt
..17.4 Uebung12
..17.5 Uebung8_2014
..17.6 Ausdruecke
18 Uebung10
19 UML_ALT
..19.1 Flaechenberechnung
..19.2 UML_Flaechenberechnung
..19.3 Implementierung
..19.4 ListeUML
..19.5 ListenImplementierung
..19.6 Anwendung

1.9 Formatierung von C++ - Programmen

Wenn Sie ein C++ Programm schreiben, sollten Sie folgende Konventionen einhalten, damit Ihr Programm übersichtlich und gut lesbar ist:

  1. Schreiben Sie nur einen Befehl pro Zeile.
  2. Geschweifte Klammern leiten Blöcke ein und beenden sie. Lassen Sie die geschweiften Klammern allein in einer Zeile stehen.
  3. Rücken Sie innere Blöcke immer um vier Leerzeichen ein.
  4. Lassen Sie Klassennamen immer mit einem Großbuchstaben beginnen.
  5. Lassen Sie Objekt-Namen immer mit einem Kleinbuchstaben beginnen.
  6. Lassen Sie Methoden mit einem kleingeschriebenen Verb beginnen, wie holeObjektanzahl()
  7. Verwenden Sie sprechende Namen, die den Zweck der verwendeten Bezeichner erklären.
  8. Kommentieren Sie Ihre Programme innerhalb der Programme ausgiebig.
class Werkstueck
{
    private:
        int anzahl;
        Rechteck re[100];
    public:
        Werkstueck()
        {
            anzahl = 0;
        }
        void addRechteck(Rechteck r)
        {
            re[anzahl] = r;
            anzahl++;
        }

        Vektor getSchwerpunkt()
        {
            Vektor sp;
            Vektor merker;
            double nenner;

            for(int i=0;i<anzahl;i++)
            {
                merker = re[i].getSchwerpunkt();
                merker.malSkalar(re[i].getFlaeche());
                sp.plusVektor(merker);
                nenner+=re[i].getFlaeche();
            }    
            sp.malSkalar(1.0/nenner);
            return sp;
        }        
};
 

Code 1.9-1: Datei Werkstueck.h, Positivbeispiel

class werkstueck
{
    private: int a;
Rechteck re[100];
public:
werkstueck(){ a = 0;
        }
        void addR(Rechteck r)
{
            re[a] = r;a++;}

Vektor GETS()
        {
Vektor sp;
Vektor merker;
            double nenner;

for(int i=0;i<a;i++)
            {merker = re[i].getSchwerpunkt();
merker.malSkalar(re[i].getFlaeche());
                sp.plusVektor(merker);
                nenner+=re[i].getFlaeche();
            }    
            sp.malSkalar(1.0/nenner);return sp;
}        
};
 

Code 1.9-2: Negativbeispiel