Klassen

Klassen sind der zentrale Baustein der Objektorientierung in C++. In dieser Lektion vertiefen wir die Definition, Konstruktoren, Methoden, Destruktoren und Zugriffsmodifikatoren.

1. Definition einer Klasse

Eine Klasse bündelt Daten (Attribute) und Funktionen (Methoden), die auf diese Daten operieren.
class Auto {
public:
    std::string marke;
    int baujahr;

    void anzeigen() {
        std::cout << marke << ", " << baujahr << std::endl;
    }
};

2. Konstruktoren

Konstruktoren initialisieren Objekte beim Erzeugen. Sie haben denselben Namen wie die Klasse und keinen Rückgabewert.
class Auto {
public:
    std::string marke;
    int baujahr;

    Auto(std::string m, int j) : marke(m), baujahr(j) {} // Konstruktor
};

3. Destruktoren

Destruktoren werden automatisch aufgerufen, wenn ein Objekt den Gültigkeitsbereich verlässt. Sie haben denselben Namen wie die Klasse, mit vorangestelltem ~.
class Auto {
public:
    ~Auto() {
        std::cout << "Objekt wird gelöscht" << std::endl;
    }
};

4. Methoden und Zugriff

Methoden definieren das Verhalten von Objekten. Zugriff über public, private und protected.
class Konto {
private:
    double saldo;
public:
    Konto(double s) : saldo(s) {}
    void einzahlen(double betrag) { saldo += betrag; }
    double getSaldo() { return saldo; }
};

5. Best Practices

6. Zusammenfassung