Zum Inhalt springen
Modul 2

Objektorientiertes C++

Klassen, Objekte, Vererbung, Polymorphie und die Säulen der OOP in C++.

Jetzt lernen8 Lektionen

Klassen & Objekte

  1. Klassen, Structs & Kapselung

    Verstehe den Unterschied zwischen struct und class, Zugriffsspezifizierer, Kapselung, const-Memberfunktionen, statische Member und moderne Aggregat-Initialisierung.

  2. Konstruktoren, Destruktoren & Regel von 0/3/5

    Beherrsche den vollständigen Lebenszyklus von C++-Objekten — von der Konstruktion bis zur Zerstörung — und lerne, wann du spezielle Memberfunktionen schreiben solltest und wann besser nicht.

  3. Kopiersemantik: tief vs. flach

    Lerne den Unterschied zwischen flachen und tiefen Kopien kennen, wie du korrekte Kopieroperationen für ressourcenbesitzende Klassen implementierst und was das Copy-and-Swap-Idiom leistet.

Vererbung & Polymorphie

  1. Vererbung & Ist-ein-Beziehungen

    Lerne öffentliche Vererbung, Konstruktorketten, das Slicing-Problem, Mehrfachvererbung und das Diamantproblem kennen — und wann Vererbung überhaupt angebracht ist.

  2. Virtuelle Funktionen, vtables & Polymorphie

    Tauche ein in Laufzeitpolymorphie: wie virtueller Dispatch unter der Haube funktioniert, wann du override und final einsetzt, was abstrakte Klassen sind und wofür RTTI gut ist.

  3. Operatorüberladung

    Lerne, wie du Operatoren korrekt überlädst — Member vs. Nicht-Member, kanonische Formen, Stream-Operatoren, den Raumschiff-Operator aus C++20 und die häufigsten Fallstricke.

OOP-Design

  1. Statische Member, Singletons & PIMPL

    Erkunde statische Member, das Meyers-Singleton-Muster, das Factory-Muster und das PIMPL-Idiom für ABI-Stabilität und Entkopplung zur Kompilierzeit.

  2. Komposition, Schnittstellen & Design

    Beherrsche Komposition statt Vererbung, rein abstrakte Schnittstellen, Designprinzipien (ISP, DIP), std::variant als Alternative zur Vererbung und Type Erasure.