C++
Hinweis: Diese Inhalte wurden mit Unterstützung von Künstlicher Intelligenz erstellt und redaktionell überprüft (Transparenzhinweis gemäß Art. 50 EU AI Act).
Weblink
- Tim Buchalka / Frank Mitropoulos Beginning C++ Programming - From Beginner to Beyond
Einleitung
Dieser Lernpfad führt dich Schritt für Schritt von den Grundlagen bis zu fortgeschrittenen Konzepten der Programmiersprache C++. Er ist speziell für Ubuntu-Rechner ausgelegt und enthält keine externen Ressourcen, Videos oder Tutorials und schlägt keine Mini-Projekte vor.
Anfänger
- Einführung in C++ und die Entwicklungsumgebung (z.B. g++, Editor)
- Aufbau eines C++-Programms (main-Funktion, Kommentare)
- Ein- und Ausgabe (cin, cout)
- Variablen und Datentypen (int, double, char, bool)
- Operatoren (arithmetisch, logisch, Vergleich)
- Kontrollstrukturen (if, else, switch)
- Schleifen (for, while, do-while)
- Funktionen (Definition, Aufruf, Parameter, Rückgabewerte)
Fortgeschrittene Grundlagen
- Arrays und Strings
- Zeiger und Referenzen
- Funktionen mit Zeigern und Referenzen
- Dynamische Speicherverwaltung (new, delete)
- Strukturen (struct)
- Einfache Fehlerbehandlung (try, catch)
Objektorientierte Programmierung
- Klassen und Objekte
- Konstruktoren und Destruktoren
- Methoden und Attribute
- Vererbung
- Polymorphismus (virtuelle Methoden)
- Kapselung und Zugriffsspezifizierer
Fortgeschrittene Themen
- Templates (Funktionen und Klassen)
- Standard Template Library (STL): Vektoren, Listen, Maps, Sets
- Iteratoren
- Exception Handling (eigene Ausnahmen)
- Dateiverarbeitung (fstream)
- Lambda-Ausdrücke
- Multithreading (std::thread)
Profi
- Design Patterns (Singleton, Factory, Observer, usw.)
- Speicheroptimierung und Performance-Tuning
- Move-Semantik und Rvalue-Referenzen
- Smart Pointer (unique_ptr, shared_ptr, weak_ptr)
- Unit-Testing (z.B. mit Catch2)
- Build-Systeme (Make, CMake)
- Debugging und Profiling
- Moderne C++-Features (C++11, C++14, C++17, C++20)
Abschluss
Mit diesem Lernpfad kannst du systematisch alle wichtigen Themen von C++ auf einem Ubuntu-Rechner erarbeiten und vertiefen.
Hinweis: Diese Inhalte wurden mit Unterstützung von Künstlicher Intelligenz erstellt und redaktionell überprüft (Transparenzhinweis gemäß Art. 50 EU AI Act).