C++ 2023
C++ – Das umfassende Handbuch (2023)
C++ – Das umfassende Handbuch zu modernem C++, Ausgabe von 2023.
C++ bietet immer wieder moderne Features, die neue Arbeitsweisen und Idiome ermöglichen. Viele Quellen im Internet lehnen sich an den C-artigen Stil an, der jedoch wenig mit den Möglichkeiten des modernen C++ zu tun hat: RAII, Concepts, Modules, Coroutinen und Ranges. Dieses Buch zeigt Ihnen die Stärken von C++ auf, insbesondere dort, wo C++ anderen Sprachen voraus ist.
Diese Auflage basiert auf einem Compiler, der C++17 vollständig unterstützt. Auch C++20 wird von allen verbreiteten Compilern unterstützt, und C++23-Features werden besonders hervorgehoben, da die Compiler-Unterstützung hier noch nicht vollumfänglich ist.
Einige C++17-Features, die in den Listings verwendet werden, sind:
- Template-Parameter-Deduktion:
vector<int> data{1,2,3}
stattvector data{1,2,3}
- string_view: Verwenden Sie
const string&
stattstring_view
- Abgekürzte Funktionstemplates:
auto
in Funktionsparametern
KI-Tools unterstützen bei der täglichen Arbeit, aber bleiben Sie skeptisch bei den Antworten, die sie geben. Diese Werkzeuge plappern oft unreflektiert nach, was das Internet hergibt, und das kann gefährlich sein. Ein Vortrag von Andrei Alexandrescu zeigt, dass KI-Tools uns immer mehr unterstützen werden, aber wir müssen wachsam bleiben.
KI-Tools unterstützen bei der täglichen Arbeit, aber bleiben Sie skeptisch bei den Antworten, die sie geben. Diese Werkzeuge plappern oft unreflektiert nach, was das Internet hergibt, und das kann gefährlich sein. Ein Vortrag von Andrei Alexandrescu zeigt, dass KI-Tools uns immer mehr unterstützen werden, aber wir müssen wachsam bleiben.
Diese Tools können ein wertvolles Hilfsmittel sein, aber sie sind kein Ersatz für menschliches Urteilsvermögen und Fachwissen. Entwickler sollten diese Werkzeuge mit Vorsicht und kritischem Denken einsetzen und sich der Grenzen und Risiken bewusst sein. Nur so können sie die Vorteile der KI-Technologie nutzen, ohne die Qualität und Integrität ihrer Arbeit zu gefährden.
Viel Spaß mit diesem Buch!
Listings
Beispielcode finden Sie zum Download beim Verlag. Die abgedruckten Listings können Sie sich hier ansehen.
Errata
Hier werden wichtige Errata zum Buch gepflegt.
- Seite 45
- Manche Distros benötigen mehr Pakete. Daher zusätzlich
zu
die Befehlesudo apt install gcc g++
sudo apt update ; sudo apt install build-essential
(bei Problemen). - Seite 48
- Das Listing passt nciht zum Text. Entweder statt
korrektDie wievielte Fibonacci-Zahl? 33
Die wievielte Fibonacci-Zahl? 34
, oder stattkorrektfib(33) = 5702887
fib(33) = 3524578
. - Seite 152
- Statt
UTF-18ist natürlich UTF-16 gemeint. - Seite 153
- Der Buchstabe heißt nicht
Ashasondern Ahsa. - Seite 246
- Der Vergleich
sollte hier nicht verwendet werden, denn er verlässt sich auf die Überlauf-Implementierung. Stattdessen zum Beispieln < 0
if (n > std::numeric_limits<int>::max()/2)
. - Seite 566
- “Dann setzen Sie new ein, um das Objekt auf dem
StackHeap zu erzeugen.”