BeliebtJourney
C++ lernen
Ein kostenloser, interaktiver Online-Kurs für C++. Du schreibst in jeder Lektion selbst C++ — Grundlagen, Pointer, Klassen, Templates — mit KI-Hinweisen, wenn der Compiler dich anmeckert, und einem kostenlosen Zertifikat am Ende.
211,803+ codders eingeschrieben
- Anfängerfreundlich
KI-gestützte Coding-Hilfe
Praktische, interaktive Lektionen
Audio-Erzählung in jeder Lektion
Quizfragen zum Wissenstest
Kostenloses Abschlusszertifikat
Lehrplan
Abschnitt 1
Grundlagen
Abschnitt startenStartenAusklappenEinklappenBauen Sie eine starke Grundlage mit wesentlichen Konzepten und grundlegenden Fähigkeiten aufEinführung
4 Lektionen325- 01C++Aufgabe
- 02Hello World!AufgabeQuiz
- 03KommentareQuiz
- 04Grundlegende ProgrammstrukturAufgabeQuiz
Variablen Teil 1
6 Lektionen846- 01Ganze ZahlenAufgabeMeisterungQuiz
- 02Reelle ZahlenAufgabeMeisterungQuiz
- 03StringAufgabeQuiz
- 04BooleanAufgabeQuiz
- 05CharAufgabeQuiz
- 06KonstantenAufgabeQuiz
Variablen Teil 2
5 Lektionen334- 01TypdeklarationAufgabeQuiz
- 02NamenskonventionenQuiz
- 03Wiederholung – Variablen initialisierenAufgabe
- 04Type Casting Teil 1AufgabeQuiz
- 05Type Casting Teil 2Quiz
Operatoren Teil 1
7 Lektionen654- 01Arithmetische OperatorenAufgabeQuiz
- 02Modulo-OperatorAufgabeQuiz
- 03Inkrement/DekrementAufgabeQuiz
- 04Post-Inkrement/DekrementAufgabeQuiz
- 05Arithmetische AbkürzungenAufgabeQuiz
- 06VergleichsoperatorenAufgabeQuiz
- 07String-VergleichQuiz
Operatoren Teil 2
4 Lektionen423- 01Logische Operatoren Teil 1AufgabeQuiz
- 02Logische Operatoren Teil 2AufgabeQuiz
- 03Wiederholung - Einfache LogikAufgabe
- 04Logische Operatoren Teil 3AufgabeQuiz
Entscheidungsfindung
6 Lektionen637- 01If-AnweisungAufgabeQuiz
- 02If - ElseAufgabeQuiz
- 03Switch-AnweisungAufgabeQuiz
- 04Bedingter OperatorAufgabeQuiz
- 05Wiederholung - If ElseAufgabe
- 06Verschachtelte If - ElseAufgabeQuiz
Eingabe/Ausgabe Grundlagen
5 Lektionen524- 01cout-AnweisungAufgabeMeisterungQuiz
- 02cin-AnweisungAufgabeQuiz
- 03String-EingabeQuiz
- 04Wiederholung - Bis 120Aufgabe
- 05Wiederholung - Wahr oder FalschAufgabe
Zahlenrechner
Projekt4 Lektionen16- 01WillkommensnachrichtAufgabeQuiz
- 02Zahlen einlesenProjekt
- 03GrundrechenartenProjekt
- 04Formatierte AusgabeProjekt
Schleifen
9 Lektionen760- 01For-Schleife Teil 1AufgabeQuiz
- 02While-SchleifeAufgabeQuiz
- 03Do-While-SchleifeAufgabeQuiz
- 04BreakAufgabeQuiz
- 05ContinueAufgabeQuiz
- 06For-Schleife Teil 2Quiz
- 07Verschachtelte SchleifenAufgabeQuiz
- 08EndlosschleifenQuiz
- 09Zusammenfassung – Dynamische EingabeAufgabe
Funktionen
7 Lektionen739- 01Eine Funktion deklarierenAufgabeQuiz
- 02ParameterAufgabeMeisterungQuiz
- 03RückgabetypenAufgabeQuiz
- 04FunktionsüberladungQuiz
- 05Rückblick - Sigma-FunktionAufgabe
- 06Rückblick - ValidierungsfunktionAufgabe
- 07Void-FunktionenAufgabeQuiz
Array-Grundlagen
9 Lektionen848- 01Arrays deklarierenAufgabeQuiz
- 02Zugriff auf ElementeAufgabeQuiz
- 03Elemente ändernAufgabeQuiz
- 04Wiederholung - Pretty Print ArrayAufgabe
- 05Arrays und FunktionenQuiz
- 06Wiederholung - Produkt-ArrayAufgabe
- 07Wiederholung - Umgekehrtes ArrayAufgabe
- 08Erweiterte For-SchleifeAufgabeQuiz
- 09Gängige Array-OperationenAufgabeQuiz
Strings
5 Lektionen441- 01C-Strings Teil 1AufgabeQuiz
- 02C-Strings Teil 2Quiz
- 03String-OperationenAufgabeQuiz
- 04String-Funktionen Teil 1AufgabeQuiz
- 05String-Funktionen Teil 2AufgabeQuiz
Abschließende Herausforderungen
3 Lektionen37- 01ZahlenmusterAufgabeQuiz
- 02Muster-FinderAufgabe
- 03Notenrechner für SchülerAufgabe
Abschnitt 2
Logik & Ablauf
Abschnitt startenStartenAusklappenEinklappenEntwickeln Sie Problemlösungsfähigkeiten und erstellen Sie dynamische, interaktive ProgrammePointer und Speicher
8 Lektionen757- 01Was ist ein Pointer?Quiz
- 02AdressoperatorAufgabeQuiz
- 03DereferenzierungsoperatorAufgabeQuiz
- 04Null-PointerAufgabeQuiz
- 05Pointer und ArraysAufgabeQuiz
- 06Dynamischer Speicher mit 'new'AufgabeQuiz
- 07Speicher freigeben mit 'delete'AufgabeQuiz
- 08Zusammenfassung – Pointer-ÜbungAufgabe
Vektoren (Dynamische Arrays)
9 Lektionen861- 01Einführung in std::vectorQuiz
- 02Einen Vector erstellenAufgabeQuiz
- 03Elemente hinzufügenAufgabeQuiz
- 04Auf Elemente zugreifenAufgabeQuiz
- 05Vector-GrößeAufgabeQuiz
- 06Iterieren mit einer For-SchleifeAufgabeQuiz
- 07Range-based For-SchleifeAufgabeQuiz
- 08Elemente entfernenAufgabeQuiz
- 09Zusammenfassung – Vector-OperationenAufgabe
Projekt: Aufgabenlisten-Tool
Projekt5 Lektionen1- 01ProjektübersichtAufgabe
- 02Eine Aufgabe hinzufügenProjekt
- 03Aufgaben anzeigenProjekt
- 04Eine Aufgabe entfernenProjekt
- 05Das Tool fertigstellenProjekt
Maps (Schlüssel-Wert-Paare)
7 Lektionen644- 01Einführung in std::mapQuiz
- 02Erstellen einer MapAufgabeQuiz
- 03Werte abrufen und ändernAufgabeQuiz
- 04Auf Schlüssel prüfenAufgabeQuiz
- 05Paare entfernenAufgabeQuiz
- 06Über eine Map iterierenAufgabeQuiz
- 07Zusammenfassung – WortfrequenzAufgabe
Projekt: Inventar-Tool
Projekt5 Lektionen1- 01Projekt-SetupAufgabe
- 02Artikel hinzufügen und aktualisierenProjekt
- 03Lagerbestand prüfenProjekt
- 04Bestand entfernenProjekt
- 05Inventarbericht ausgebenProjekt
Sets (Eindeutige Elemente)
6 Lektionen538- 01Einführung in std::setQuiz
- 02Set erstellen & Elemente hinzufügenAufgabeQuiz
- 03Auf Elemente prüfenAufgabeQuiz
- 04Elemente entfernenAufgabeQuiz
- 05Über ein Set iterierenAufgabeQuiz
- 06Zusammenfassung – Eindeutige ZahlenAufgabe
Fortgeschrittene Funktionen
7 Lektionen653- 01ReferenzübergabeAufgabeQuiz
- 02Einführung in Lambda-AusdrückeAufgabeQuiz
- 03Lambdas mit ParameternAufgabeQuiz
- 04Lambdas mit RückgabewertenAufgabeQuiz
- 05Einführung in die RekursionQuiz
- 06Rekursive FakultätAufgabeQuiz
- 07Lambda SortAufgabeQuiz
Grundlagen der Fehlerbehandlung
6 Lektionen540- 01Einführung in ExceptionsQuiz
- 02Die 'try'- und 'catch'-BlöckeAufgabeQuiz
- 03Das 'throw'-SchlüsselwortAufgabeQuiz
- 04Verschiedene Exception-TypenAufgabeQuiz
- 05Der Catch-All-HandlerAufgabeQuiz
- 06Rückblick - Sichere DivisionAufgabe
Abschlussherausforderungen
3 Lektionen3- 01Vektor-DatenfilterungAufgabe
- 02Map-WertsucheAufgabe
- 03Pointer und dynamische ArraysAufgabe
Abschnitt 3
Objektorientierte Programmierung
Abschnitt startenStartenAusklappenEinklappenEntdecken Sie, wie Sie Code mit Klassen, Objekten und wiederverwendbaren Strukturen organisierenGrundlagen der OOP
11 Lektionen1187- 01Externe DateienAufgabeQuiz
- 02C++ Build & KompilierungAufgabeQuiz
- 03Header-Dateien & QuelldateienAufgabeQuiz
- 04Namensräume & GültigkeitsbereicheAufgabeQuiz
- 05Einführung in OOP in C++AufgabeQuiz
- 06Klassen vs. ObjekteAufgabeQuiz
- 07Der 'this'-PointerAufgabeQuiz
- 08Methoden (Elementfunktionen)AufgabeQuiz
- 09Attribute (Datenelemente)AufgabeQuiz
- 10Grundlagen zu Ctors & DtorsAufgabeQuiz
- 11Rückblick - Einfacher TaschenrechnerAufgabe
Speicherverwaltung
6 Lektionen644- 01Stack vs. Heap SpeicherAufgabeQuiz
- 02Zeiger und ReferenzenAufgabeQuiz
- 03Dynamischer Speicher (new/delete)AufgabeQuiz
- 04Smart Pointers in C++AufgabeQuiz
- 05RAII in C++AufgabeQuiz
- 06Rückblick – Dynamischer Array-ManagerAufgabe
Konstruktoren & Destruktoren
9 Lektionen972- 01StandardkonstruktorAufgabeQuiz
- 02Parametrisierter KonstruktorAufgabeQuiz
- 03KopierkonstruktorAufgabeQuiz
- 04VerschiebekonstruktorAufgabeQuiz
- 05Konstruktor-InitialisierungslistenAufgabeQuiz
- 06Delegierende KonstruktorenAufgabeQuiz
- 07Destruktoren im DetailAufgabeQuiz
- 08Rule of Three / Five / ZeroAufgabeQuiz
- 09Zusammenfassung - String-KlasseAufgabe
Klasseneigenschaften
7 Lektionen753- 01Instanz- vs. statische MemberAufgabeQuiz
- 02Getter und SetterAufgabeQuiz
- 03Const-MemberfunktionenAufgabeQuiz
- 04Mutable-SchlüsselwortAufgabeQuiz
- 05Statische Methoden und VariablenAufgabeQuiz
- 06Friend-Funktionen & KlassenAufgabeQuiz
- 07Zusammenfassung - Bankkonto-ManagerAufgabe
Kapselung
6 Lektionen651- 01Zugriffsspezifizierer in C++AufgabeQuiz
- 02Zugriffsspezifizierer im DetailAufgabeQuiz
- 03Information HidingAufgabeQuiz
- 04Struct vs. ClassAufgabeQuiz
- 05Verschachtelte & innere KlassenAufgabeQuiz
- 06Rückblick - StudentenverwaltungssystemAufgabeQuiz
Operatorüberladung
8 Lektionen863- 01Einführung in die OperatorüberladungAufgabeQuiz
- 02Arithmetische OperatorüberladungAufgabeQuiz
- 03VergleichsoperatorüberladungAufgabeQuiz
- 04Stream-OperatorenAufgabeQuiz
- 05ZuweisungsoperatorüberladungAufgabeQuiz
- 06Überladen der [] und () OperatorenAufgabeQuiz
- 07TypumwandlungsoperatorenAufgabeQuiz
- 08Rückblick - Matrix-KlasseAufgabe
Vererbung
8 Lektionen862- 01Grundlagen der VererbungAufgabeQuiz
- 02Zugriffsstufen bei VererbungAufgabeQuiz
- 03Aufrufreihenfolge von Ctor & DtorAufgabeQuiz
- 04Überschreiben von MethodenAufgabeQuiz
- 05Virtuelle Funktionen & VTableAufgabeQuiz
- 06MehrfachvererbungAufgabeQuiz
- 07Virtuelle VererbungAufgabeQuiz
- 08Rückblick - Mitarbeiter-HierarchieAufgabe
Polymorphie
8 Lektionen860- 01Kompilierzeit- vs. Laufzeit-PolymorphieAufgabeQuiz
- 02FunktionsüberladungAufgabeQuiz
- 03Virtuelle Funktionen – WiederholungAufgabeQuiz
- 04Rein virtuelle FunktionenAufgabeQuiz
- 05Abstrakte KlassenAufgabeQuiz
- 06Interface-Design in C++AufgabeQuiz
- 07Dynamic Casting & RTTIAufgabeQuiz
- 08Zusammenfassung – Formen-RechnerAufgabe
Templates
6 Lektionen546- 01FunktionstemplatesAufgabeQuiz
- 02KlassentemplatesAufgabeQuiz
- 03Template-SpezialisierungAufgabeQuiz
- 04Variadische TemplatesAufgabeQuiz
- 05SFINAE & Type Traits GrundlagenQuiz
- 06Rückblick - Generische ContainerAufgabe
STL-Übersicht
6 Lektionen646- 01STL-Übersicht & PhilosophieAufgabeQuiz
- 02STL-ContainerAufgabeQuiz
- 03IteratorenAufgabeQuiz
- 04STL-AlgorithmenAufgabeQuiz
- 05Funktoren & Lambda-AusdrückeAufgabeQuiz
- 06Rückblick – WortfrequenzAufgabe
Fortgeschrittene OOP-Konzepte
7 Lektionen763- 01Komposition vs. VererbungAufgabeQuiz
- 02Mixins via CRTPAufgabeQuiz
- 03Pimpl-IdiomAufgabeQuiz
- 04Type ErasureAufgabeQuiz
- 05Enum-Klassen & starke TypisierungAufgabeQuiz
- 06Exception-Handling in OOPAufgabeQuiz
- 07Eigene Exception-HierarchienAufgabeQuiz
Moderne C++ Features
7 Lektionen764- 01Move-Semantik & RvaluesAufgabeQuiz
- 02Perfect ForwardingAufgabeQuiz
- 03Lambda-Ausdrücke im DetailAufgabeQuiz
- 04std::function & std::bindAufgabeQuiz
- 05constexpr und constevalAufgabeQuiz
- 06Structured BindingsAufgabeQuiz
- 07optional, variant, anyAufgabeQuiz
Entwurfsmuster Teil 1
6 Lektionen655- 01Einführung in EntwurfsmusterAufgabeQuiz
- 02Singleton-MusterAufgabeQuiz
- 03Factory & Abstrakte FabrikAufgabeQuiz
- 04Builder-MusterAufgabeQuiz
- 05Observer-MusterAufgabeQuiz
- 06Strategy-MusterAufgabeQuiz
Entwurfsmuster Teil 2
7 Lektionen764- 01Command-MusterAufgabeQuiz
- 02Adapter-MusterAufgabeQuiz
- 03Decorator-MusterAufgabeQuiz
- 04Template-Method-MusterAufgabeQuiz
- 05State-MusterAufgabeQuiz
- 06Composite-MusterAufgabeQuiz
- 07RAII als MusterAufgabeQuiz
Abschließende Herausforderungen
2 Lektionen2- 01E-Learning-PlattformAufgabe
- 02BankensystemAufgabe
Warum C++ mit Coddy lernen
- Schreib und führ echten C++-Code direkt im Browser aus. Keine Compiler-Installation, kein Toolchain-Setup. Jede Lektion kompiliert deinen C++-Code serverseitig und zeigt dir die Ausgabe sofort an.
- Modernes C++: Klassen und Objekte, Vererbung, virtuelle Funktionen, Referenzen und Pointer, Templates, die STL. Die C++-Patterns, die heute tatsächlich genutzt werden.
- KI-Hinweise helfen dir, C++-Compilerfehler zu lesen und zu beheben – gerade die berüchtigt kryptischen – damit sich die Sprache zugänglich anfühlt statt strafend.
- Kostenloses C++-Zertifikat zum Abschluss. Praktisch für Systems, Game-Dev und Embedded, wo C++-Kenntnisse vorausgesetzt werden.
Häufige Fragen zum Lernen von C++
Ist C++ leicht zu lernen?
C++ gilt als eine der schwierigeren Sprachen – Pointer, manuelle Speicherverwaltung und ein riesiger Funktionsumfang summieren sich. Die gute Nachricht: Du brauchst nicht alles vom ersten Tag an. Der Kurs fängt mit dem praktischen Kern an (Variablen, Kontrollfluss, Funktionen, Klassen) und führt Pointer und Templates erst ein, wenn die Grundlagen sitzen.
Soll ich zuerst C oder C++ lernen?
Beide vermitteln Low-Level-Denken, führen aber in unterschiedliche Richtungen. C ist kompakter und zwingt dich von Anfang an, dich mit Speicher und Pointern auseinanderzusetzen. C++ ist umfangreicher, lässt dich aber sanfter einsteigen – über Klassen und die STL, bevor du Speicher selbst verwalten musst. Für Anwendungs- oder Spieleentwicklung fängst du am besten mit C++ an; für Embedded- oder OS-Arbeit ist C näher an der Hardware.
Wie lange dauert es, C++ zu lernen?
Die C++-Grundlagen – Syntax, Kontrollfluss, Funktionen, einfache Klassen – schaffst du mit täglicher Übung in drei bis sechs Wochen. Bis du sicher mit Pointern, Templates und der STL umgehst, dauert es meist drei bis sechs Monate. Echte Meisterschaft (modernes C++, Performance-Tuning, komplexe Codebasen) ist eine Sache von mehreren Jahren.
Kann ich C++ online kostenlos lernen?
Ja. Der interaktive C++-Kurs ist kostenlos – Lektionen, Programmieraufgaben, Quizze und ein Zertifikat. Der Editor läuft im Browser, du musst also weder GCC, Clang noch Visual Studio lokal installieren, um mit C++ loszulegen.
Muss ich einen Compiler installieren, um diesen C++-Kurs zu machen?
Nein. Jede C++-Übung wird serverseitig in einer Sandbox kompiliert und zeigt die Ausgabe direkt neben deinem Code. Keine Toolchain, kein Makefile, keine IDE.
Bekomme ich nach dem Kurs ein C++ Zertifikat?
Ja. Wenn du den C++-Kurs abschließt, bekommst du ein kostenloses Abschlusszertifikat. Ein überprüfbarer Nachweis, den du zusammen mit deinem Portfolio-Code in Lebenslauf oder LinkedIn-Profil aufnehmen kannst.