Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Impressum
Einleitung
Danksagungen
Über die Fachkorrektoren der deutschen Ausgabe
Kapitel 1: Die Grundlagen
1.1 Einführung
1.2 Programme
1.2.1 Hello, World!
1.3 Funktionen
1.4 Typen, Variablen und Arithmetik
1.4.1 Rechenoperatoren
1.4.2 Initialisierung
1.5 Gültigkeitsbereich und Lebensdauer
1.6 Konstanten
1.7 Zeiger, Arrays und Referenzen
1.7.1 Der Null-Pointer
1.8 Bedingungen prüfen
1.9 Auf Hardware abbilden
1.9.1 Zuweisung
1.9.2 Initialisierung
1.10 Ratschläge
Kapitel 2: Benutzerdefinierte Typen
2.1 Einführung
2.2 Strukturen
2.3 Klassen
2.4 Aufzählungen
2.5 Unions
2.6 Ratschläge
Kapitel 3: Modularität
3.1 Einführung
3.2 Separates Kompilieren
3.2.1 Header-Dateien
3.2.2 Module
3.3 Namensräume
3.4 Funktionsargumente und Rückgabewerte
3.4.1 Argumentübergabe
3.4.2 Werterückgabe
3.4.3 Rückgabetyp ableiten
3.4.4 Suffix-Rückgabetyp
3.4.5 Strukturierte Bindung
3.5 Ratschläge
Kapitel 4: Fehlerbehandlung
4.1 Einführung
4.2 Exceptions
4.3 Invarianten
4.4 Alternativen für die Fehlerbehandlung
4.5 Assertions
4.5.1 assert()
4.5.2 Statische Assertionen
4.5.3 noexcept
4.6 Ratschläge
Kapitel 5: Klassen
5.1 Einführung
5.1.1 Klassen
5.2 Konkrete Typen
5.2.1 Ein arithmetischer Typ
5.2.2 Ein Container
5.2.3 Container initialisieren
5.3 Abstrakte Typen
5.4 Virtuelle Funktionen
5.5 Klassenhierarchien
5.5.1 Vorteile von Hierarchien
5.5.2 Die Navigation in einer Hierarchie
5.5.3 Ressourcenlecks vermeiden
5.6 Ratschläge
Kapitel 6: Notwendige Operationen
6.1 Einführung
6.1.1 Notwendige Operationen
6.1.2 Konvertierungen
6.1.3 Member-Initialisierer
6.2 Kopieren und Verschieben
6.2.1 Container kopieren
6.2.2 Container verschieben
6.3 Ressourcenverwaltung
6.4 Operatoren überladen
6.5 Konventionelle Operationen
6.5.1 Vergleiche (Relationale Operatoren)
6.5.2 Container-Operationen
6.5.3 Iteratoren und »smarte Zeiger«
6.5.4 Eingabe- und Ausgabeoperationen
6.5.5 swap()
6.5.6 hash<>
6.6 Benutzerdefinierte Literale
6.7 Ratschläge
Kapitel 7: Templates
7.1 Einführung
7.2 Parametrisierte Typen
7.2.1 Beschränkte Template-Argumente
7.2.2 Wert-Template-Argumente
7.2.3 Deduktion von Template-Argumenten
7.3 Parametrisierte Operationen
7.3.1 Funktions-Templates
7.3.2 Funktionsobjekte
7.3.3 Lambda-Ausdrücke
7.4 Template-Mechanismen
7.4.1 Variablen-Templates
7.4.2 Aliasse
7.4.3 Compile-Zeit-if
7.5 Ratschläge
Kapitel 8: Konzepte und generische Programmierung
8.1 Einführung
8.2 Konzepte
8.2.1 Verwendung von Konzepten
8.2.2 Konzeptbasiertes Überladen
8.2.3 Gültiger Code
8.2.4 Definition von Konzepten
8.2.5 Konzepte und auto
8.2.6 Konzepte und Typen
8.3 Generische Programmierung
8.3.1 Verwendung von Konzepten
8.3.2 Abstraktion mittels Templates
8.4 Variadische Templates
8.4.1 Fold-Ausdrücke
8.4.2 Argumente weitergeben
8.5 Modell der Template-Kompilierung
8.6 Ratschläge
Kapitel 9: Überblick über die Bibliothek
9.1 Einführung
9.2 Komponenten der Standardbibliothek
9.3 Organisation der Standardbibliothek
9.3.1 Namensräume
9.3.2 Der Namensraum ranges
9.3.3 Module
9.3.4 Header
9.4 Ratschläge
Kapitel 10: Strings und reguläre Ausdrücke
10.1 Einführung
10.2 Strings
10.2.1 Die Implementierung von string
10.3 String-Views
10.4 Reguläre Ausdrücke
10.4.1 Suche
10.4.2 Notation regulärer Ausdrücke
10.4.3 Iteratoren
10.5 Ratschläge
Kapitel 11: Eingabe und Ausgabe
11.1 Einführung
11.2 Ausgabe
11.3 Eingabe
11.4 I/O-Status
11.5 Ein-/Ausgabe benutzerdefinierter Typen
11.6 Ausgabeformatierung
11.6.1 Stream-Formatierung
11.6.2 Formatierung im printf()-Stil
11.7 Streams
11.7.1 Standard-Streams
11.7.2 Datei-Streams
11.7.3 String-Streams
11.7.4 Speicher-Streams
11.7.5 Synchronisierte Streams
11.8 Ein-/Ausgaben im C-Stil
11.9 Dateisystem
11.9.1 Pfade
11.9.2 Dateien und Verzeichnisse
11.10 Ratschläge
Kapitel 12: Container
12.1 Einführung
12.2 vector
12.2.1 Elemente
12.2.2 Bereichsüberprüfung
12.3 list
12.4 forward_list
12.5 map
12.6 unordered_map
12.7 Allokatoren
12.8 Ein Überblick über Container
12.9 Ratschläge
Kapitel 13: Algorithmen
13.1 Einführung
13.2 Verwendung von Iteratoren
13.3 Iterator-Typen
13.3.1 Stream-Iteratoren
13.4 Verwendung von Prädikaten
13.5 Überblick über Algorithmen
13.6 Parallele Algorithmen
13.7 Ratschläge
Kapitel 14: Bereiche (Ranges)
14.1 Einführung
14.2 Views
14.3 Generatoren
14.4 Pipelines
14.5 Überblick über Konzepte
14.5.1 Typkonzepte
14.5.2 Iterator-Konzepte
14.5.3 Bereichskonzepte
14.6 Ratschläge
Kapitel 15: Zeiger und Container
15.1 Einführung
15.2 Zeiger
15.2.1 unique_ptr und shared_ptr
15.2.2 span
15.3 Container
15.3.1 array
15.3.2 bitset
15.3.3 pair
15.3.4 tuple
15.4 Alternativen
15.4.1 variant
15.4.2 optional
15.4.3 any
15.5 Ratschläge
Kapitel 16: Utilities
16.1 Einführung
16.2 Zeit
16.2.1 Uhren
16.2.2 Kalender
16.2.3 Zeitzonen
16.3 Funktionsanpassung
16.3.1 Lambdas als Adapter
16.3.2 mem_fn()
16.3.3 function
16.4 Typfunktionen
16.4.1 Typprädikate
16.4.2 Bedingte Eigenschaften
16.4.3 Typgeneratoren
16.4.4 Assoziierte Typen
16.5 source_location
16.6 move() und forward()
16.7 Bitmanipulation
16.8 Ein Programm beenden
16.9 Ratschläge
Kapitel 17: Numerik
17.1 Einführung
17.2 Mathematische Funktionen
17.3 Numerische Algorithmen
17.3.1 Parallele numerische Algorithmen
17.4 Komplexe Zahlen
17.5 Zufallszahlen
17.6 Vektorarithmetik
17.7 Numerische Grenzen
17.8 Typ-Aliasse
17.9 Mathematische Konstanten
17.10 Ratschläge
Kapitel 18: Nebenläufigkeit
18.1 Einführung
18.2 Tasks und thread
18.2.1 Argumente übergeben
18.2.2 Ergebnisse zurückgeben
18.3 Daten gemeinsam nutzen
18.3.1 mutexe und Locks
18.3.2 atomic
18.4 Warten auf Ereignisse
18.5 Kommunizierende Tasks
18.5.1 future und promise
18.5.2 packaged_task
18.5.3 async()
18.5.4 Einen Thread stoppen
18.6 Koroutinen
18.6.1 Kooperatives Multitasking
18.7 Ratschläge
Kapitel 19: Geschichte und Kompatibilität
19.1 Geschichte
19.1.1 Chronik
19.1.2 Die frühen Jahre
19.1.3 Die ISO-C++-Standards
19.1.4 Standards und Stil
19.1.5 Verwendung von C++
19.1.6 Das C++-Modell
19.2 Die Entwicklung der Merkmale von C++
19.2.1 Sprachmerkmale von C++11
19.2.2 Sprachmerkmale von C++14
19.2.3 Sprachmerkmale von C++17
19.2.4 Sprachmerkmale von C++20
19.2.5 Komponenten der C++11-Standardbibliothek
19.2.6 Komponenten der C++14-Standardbibliothek
19.2.7 Komponenten der C++17-Standardbibliothek
19.2.8 Komponenten der C++20-Standardbibliothek
19.2.9 Entfernte und veraltete Funktionsmerkmale
19.3 C/C++-Kompatibilität
19.3.1 C und C++ sind Geschwister
19.3.2 Kompatibilitätsprobleme
19.4 Ratschläge
Anhang A: module std
A.1 Einführung
A.2 Benutzen Sie, was Ihre Implementierung zu bieten hat
A.3 Benutzen Sie Header
A.4 Machen Sie sich Ihr eigenes module std
A.5 Ratschläge
Anhang B: Literaturverzeichnis
B.1 Literaturhinweise
← Prev
Back
Next →
← Prev
Back
Next →