Was ist C++?
C++ ist die Hochleistungssprache hinter Spiele-Engines, Betriebssystemen und Hochfrequenzhandel. Erfahre, warum modernes C++20/23 wieder attraktiv ist.
Inhaltsverzeichnis
Was ist C++?
C++ wurde 1985 von Bjarne Stroustrup entwickelt - als โC mit Klassenโ. Heute ist C++ eine der meistgenutzten Sprachen der Welt und das Fundament, auf dem vieles laeuft: Betriebssysteme, Browser, Spiele-Engines, Datenbanken, Finanzsysteme.
Wenn Leistung entscheidend ist - und eine Sprache ganz nah an der Hardware sein soll, ohne Garbage Collector - ist C++ oft die Wahl.
Wofuer wird C++ genutzt?
Spiele und Engines
- Unreal Engine - C++ als Hauptsprache
- CryEngine, Frostbite, idTech - alle in C++
- Unityโs Kern ist C++, Scripting in C#
- Godot hat einen C++-Kern
Systemsoftware
- Teile von Windows, macOS, Linux-Kernel (der Kernel ist in C, aber Userland-Tools oft in C++)
- Browser: Chrome, Firefox, Safari haben grosse C++-Kerne
- Datenbanken: MySQL, MongoDB, Redis
Finanz- & Hochfrequenzhandel
Wenn Microsekunden zaehlen, ist C++ unschlagbar.
Embedded und IoT
Neben C ist C++ die zweite Standardsprache auf Mikrocontrollern, Fahrzeug-Steuerungen, Industrie.
Wissenschaftliches Rechnen
Machine Learning-Libraries (PyTorch, TensorFlow) haben C++-Kerne. Python ist das Frontend, C++ macht die Arbeit.
Was macht C++ so besonders?
Zero-Cost Abstractions
Du kannst hoch-abstrahieren - Klassen, Templates, Ranges - ohne Laufzeit-Kosten. Der Compiler loest das alles zur Build-Zeit auf.
Keine Laufzeitumgebung
Kein Garbage Collector, keine VM. Dein C++-Binary hat keine Abhaengigkeiten ausser der System-C++-Runtime.
Direkter Hardware-Zugriff
Pointer, Bit-Manipulation, Inline-Assembly - wenn du es brauchst, hast du es.
Modernes C++ ist wesentlich freundlicher
Was viele nicht wissen: Die C++-Sprache, die du heute schreiben solltest, ist sehr anders als altes C++:
// Modernes C++ (C++17/20/23)
#include <vector>
#include <string>
#include <ranges>
#include <iostream>
int main() {
std::vector<std::string> namen = {"Max", "Anna", "Leo"};
for (const auto& name : namen
| std::views::filter([](const auto& n) {
return n.size() > 3;
})) {
std::cout << "Hallo, " << name << "!\n";
}
}
autofuer automatische Typ-Ableitung- Range-for fuer elegante Iteration
- Lambdas fuer Closures
- Ranges und Pipelines (
std::views) - Smart Pointers statt manuellem
new/delete
Wenn du C++-Guides aus den 90ern siehst, wirf sie weg. Das ist nicht mehr C++.
Vorteile & Nachteile
Vorteile
- Performance: Nah an der Hardware, oft schneller als alles andere
- Kontrolle: Du entscheidest ueber Speicher-Layout, Lebenszeit, Optimierung
- Ueberall verfuegbar: Windows, macOS, Linux, Konsolen, Mobile, Embedded
- Riesiges Oekosystem: Jahrzehntealte Bibliotheken, moderne Tools
Nachteile
- Komplexitaet: C++ ist eine der komplexesten Sprachen der Welt
- Manuelle Speicherverwaltung: Auch mit Smart Pointers musst du ueber Ownership nachdenken
- Lange Kompilierzeiten: Grosse Projekte bauen Minuten bis Stunden
- โGotchasโ: Undefined Behavior, Header-Files, komplizierte Template-Fehler
Wie lerne ich C++ richtig?
Der groesste Lerntipp: Lerne modernes C++ (C++17/20/23), nicht aelteren Code. Konkret:
autowenn der Typ klar ist- Range-for statt index-basierter Loops
std::vectorstatt nackter Arraysstd::unique_ptr/std::shared_ptrstattnew/deletestd::stringstattchar*- Exceptions statt Error-Codes (meistens)
- RAII als fundamentales Prinzip
Dieser Kurs lehrt modernes C++ - du startest direkt mit dem zeitgemaessen Stil.
Lohnt sich C++ 2026?
Ja - aber gezielt. C++ ist eine Investition. Wenn du:
- Spiele-Engines oder Hochleistungssysteme bauen willst
- im Embedded-Bereich arbeitest
- Finanzsysteme, Datenbanken oder Compiler entwickelst
โฆ dann ist C++ Pflicht oder sehr wertvoll.
Wenn du primaer Web oder Apps baust: Andere Sprachen sind praktischer. Rust ist oft die moderne Alternative zu C++, wenn du die Systemebene ansprichst.
Als Naechstes: Im naechsten Kapitel richten wir einen Compiler ein.