
C++
Das umfassende Handbuch, aktuell zum Standard C++11
Jürgen Wolf(Author)
Rheinwerk (Publisher)
3rd Edition
Published on 27. January 2014
Book
Mixed media product
1062 pages
978-3-8362-2021-7 (ISBN)
Article exhausted; check for reprint
Description
Dieses Buch ist als Lehr- und Nachschlagewerk angelegt: Es bietet einen sehr ausführlichen Einstieg in die Sprache C++ und die Objektorientierung, aktuell zum Standard C++11. Darüber hinaus enthält es umfangreiche Kapitel zu professionellen C++-Themen, etwa zur GUI- und Multimedia-Entwicklung. Das ausgewogene didaktische Konzept und die herausragende fachliche Qualität machen es zu einem unentbehrlichen Begleiter in Studium und Beruf.
Aus dem Inhalt:
Sprachgrundlagen
Objektorientierte Programmierung
Ausnahmebehandlung
Templates
Containerklassen
Die string-Klasse
Die Stream-Klassen von C++
Reguläre Ausdrücke
Multithreading
GUI-Programmierung mit Qt
Galileo Press heißt jetzt Rheinwerk Verlag.
Aus dem Inhalt:
Sprachgrundlagen
Objektorientierte Programmierung
Ausnahmebehandlung
Templates
Containerklassen
Die string-Klasse
Die Stream-Klassen von C++
Reguläre Ausdrücke
Multithreading
GUI-Programmierung mit Qt
Galileo Press heißt jetzt Rheinwerk Verlag.
Reviews / Votes
»Buchtipp!«More details
Series
Language
German
Place of publication
Bonn
Germany
Edition type
Revised edition
Dimensions
Height: 24 cm
Width: 16.8 cm
ISBN-13
978-3-8362-2021-7 (9783836220217)
Schweitzer Classification
Other editions
New editions

Book
06/2024
3rd Edition
Rheinwerk
€49.90
Available immediately

Book
12/2017
1st Edition
Rheinwerk
€39.90
Article exhausted; check for reprint
Previous edition

Book
05/2009
2nd Edition
Galileo Computing
€39.90
Article exhausted; check for reprint
Content
Geleitwort ... 19
Vorwort ... 21
1. Wir richten uns ein und bringen es ans Laufen ... 25
1.1 ... Von der Quelldatei zum ausführbaren Programm ... 25
1.2 ... Übersicht über die Entwicklungsumgebungen ... 26
1.3 ... Quellcode übersetzen ... 32
1.4 ... C++-Referenzen zum Nachschlagen (bzw. Laden) ... 37
1.5 ... Das Hauptprogramm -- die main()-Funktion ... 38
1.6 ... Die einfachen Streams für die Ein-/Ausgabe ... 43
1.7 ... Zusammenfassung ... 49
2. Die Basisdatentypen in C++ ... 51
2.1 ... Grundlegendes zu Datentypen ... 51
2.2 ... Ganzzahldatentypen (Integer-Datentypen) ... 55
2.3 ... Typen für Gleitkommazahlen ... 60
2.4 ... Typ(en) für Zeichen ... 62
2.5 ... Typ auto (C++11) ... 68
2.6 ... Übersicht und Größe der Basisdatentypen ... 70
2.7 ... Rechnen mit C++ ... 77
2.8 ... Zufallszahlen (neu in C++11) ... 90
2.9 ... Konvertieren von Typen ... 92
3. Kontrollstrukturen ... 99
3.1 ... Bedingte Anweisung ... 99
3.2 ... Fallunterscheidung (mehrfache Verzweigung) ... 111
3.3 ... Schleifen (Wiederholungen) ... 115
4. Jenseits der Basisdatentypen ... 129
4.1 ... Arrays ... 129
4.2 ... Strings (Zeichenketten) ... 143
4.3 ... Zeiger ... 153
4.4 ... Referenzen ... 164
4.5 ... Strukturen ... 166
4.6 ... Unions ... 177
4.7 ... Aufzählungstypen (C++11-Version) ... 180
4.8 ... Synonym-Technik ... 183
4.9 ... Fazit ... 185
5. Funktionen ... 187
5.1 ... Funktionen definieren ... 187
5.2 ... Funktionen aufrufen ... 189
5.3 ... Funktionen deklarieren (Vorausdeklaration) ... 189
5.4 ... Exkurs: Gültigkeitsbereiche ... 191
5.5 ... Funktionsparameter ... 195
5.6 ... Rückgabewert aus einer Funktion ... 207
5.7 ... Funktionen überladen ... 215
5.8 ... Spezielle Funktionen ... 217
5.9 ... Die neue Funktionssyntax (C++11) ... 221
5.10 ... Ausblick ... 226
6. Modularisierung ... 227
6.1 ... Namensräume ... 227
6.2 ... Speicherklassenattribute ... 238
6.3 ... Typqualifikatoren ... 244
6.4 ... Spezielle Schlüsselwörter ... 247
6.5 ... Präprozessor-Direktiven ... 251
6.6 ... Modulare Programmierung -- Code organisieren ... 260
7. Grundlagen zu den Klassen ... 269
7.1 ... Prinzip von Klassen ... 271
7.2 ... Klassen erstellen ... 272
7.3 ... Objekte einer Klasse erzeugen ... 274
7.4 ... Klassen(-Eigenschaften) initialisieren ... 276
7.5 ... Objekte zerstören -- Destruktoren ... 295
7.6 ... Exkurs: Zugriffskontrolle auf die Klassenmitglieder ... 298
7.7 ... Methoden -- die Funktionen der Klasse ... 303
7.8 ... Spezielle Eigenschaften einer Klasse ... 329
7.9 ... Erzeugen von Methoden steuern (C++11) ... 345
7.10 ... Klassen für das Verschieben schreiben (C++11) ... 350
7.11 ... Friend-Klassen ... 357
8. Operatoren überladen ... 359
8.1 ... Grundlegendes zum Überladen von Operatoren ... 361
8.2 ... Zuweisungsoperator -- operator= ... 373
8.3 ... Die Operatoren im Schnelldurchlauf ... 379
8.4 ... Übersicht der Operatoren in einer Tabelle ... 400
9. Vererbung ... 407
9.1 ... Grundlagen zur Vererbung ... 407
9.2 ... Abgeleitete Klassen implementieren ... 410
9.3 ... Zugriffsschutz anpassen ... 417
9.4 ... Abgeleitete Klassen verwenden und erweitern ... 423
9.5 ... Auf- und Abbau von abgeleiteten Klassen ... 428
9.6 ... Implizite und explizite Typumwandlung in der Klassenhierarchie ... 434
9.7 ... Polymorphie mithilfe von virtuellen Methoden ... 436
9.8 ... Virtueller Destruktor ... 442
9.9 ... Pure virtuelle Methoden und abstrakte Klassen ... 445
9.10 ... Mehrfachvererbung ... 457
10. Ausnahmebehandlung (Exceptions) ... 467
10.1 ... Prinzip der Ausnahmebehandlung ... 468
10.2 ... Ausnahmebehandlung implementieren ... 469
10.3 ... Ausnahmeklasse implementieren ... 481
10.4 ... Standardausnahmen von C++ ... 485
10.5 ... Spezielle Fehlerbehandlungsfunktionen ... 496
10.6 ... Gefahren bei der Ausnahmebehandlung ... 504
11. Template-Programmierung ... 507
11.1 ... Funktions-Templates ... 508
11.2 ... Klassen-Templates ... 523
11.3 ... Templates mit variabler Argumentanzahl (C++11) ... 539
12. Container, Iteratoren, Algorithmen und Hilfsmittel ... 545
12.1 ... Grundlagen ... 546
12.2 ... Standardcontainer-Klassen ... 550
12.3 ... Kleine Methodenübersicht aller Containerklassen ... 578
12.4 ... Iteratoren ... 590
12.5 ... Algorithmen ... 603
12.6 ... Hilfsmittel ... 627
13. Die Stream-Ein-/Ausgabeklassen von C++ ... 647
13.1 ... Das Ein-/Ausgabe-Stream-Konzept von C++ ... 647
13.2 ... Globale, vordefinierte Standard-Streams ... 648
13.3 ... Methoden für die Aus- und Eingabe von Streams ... 650
13.4 ... Fehlerbehandlung bzw. Zustand von Streams ... 655
13.5 ... Streams manipulieren und formatieren ... 659
13.6 ... Streams für die Datei-Ein-/Ausgabe ... 672
13.7 ... Streams für Strings ... 687
13.8 ... Stream-Puffer ... 692
14. Reguläre Ausdrücke (C++11) ... 695
14.1 ... Grammatik-Grundlagen zu den regulären Ausdrücken ... 696
14.2 ... Ein Objekt für reguläre Ausrücke erzeugen ... 699
14.3 ... Suchergebnis analysieren ... 702
14.4 ... Algorithmen für reguläre Ausdrücke ... 705
15. Multithreading (C++11) ... 719
15.1 ... Die Grundlagen ... 719
15.2 ... Threads erzeugen ... 722
15.3 ... Gemeinsame Daten synchronisieren ... 734
15.4 ... Threadlokale Daten ... 750
15.5 ... Threads synchronisieren ... 751
15.6 ... Asynchrones Arbeiten (Future und Promise) ... 755
15.7 ... packaged_task ... 767
16. Weitere Neuerungen in C++11 ... 773
16.1 ... Move-Semantik und Perfect Forwarding ... 773
16.2 ... Benutzerdefinierte Literale (C++11) ... 784
16.3 ... Smart Pointer (C++11) ... 789
16.4 ... Zeitbibliothek ... 812
16.5 ... Type-Traits ... 820
16.6 ... POD (Plain Old Data) (C++11) ... 826
16.7 ... std::initializer_list ... 828
17. GUI-Programmierung mit Qt ... 833
17.1 ... Ein erstes Programmbeispiel schreiben ... 836
17.2 ... Signale und Slots ... 846
17.3 ... Klassenhierarchie von Qt ... 866
17.4 ... Eigene Widgets erstellen ... 870
17.5 ... Eigene Widgets mit dem Qt Designer erstellen ... 873
17.6 ... Widgets anordnen ... 880
17.7 ... Dialoge erstellen mit QDialog ... 888
17.8 ... Vorgefertigte Dialoge von Qt ... 896
17.9 ... Eigenen Dialog mit dem Qt Designer erstellen ... 909
17.10 ... Grafische Bedienelemente von Qt (Qt-Widgets) ... 930
17.11 ... Anwendungen in einem Hauptfenster ... 969
17.12 ... Anwendung lokalisieren mit Qt Linguistic ... 998
17.13 ... Anwendungen in einem Hauptfenster mit dem Qt Designer ... 1006
17.14 ... Qt Designer vs. handgeschrieben ... 1018
17.15 ... Dinge, die man wissen sollte ... ... 1018
17.16 ... Klassen und Typen zum Speichern von Daten ... 1027
17.17 ... Fazit ... 1032
Anhang ... 1033
A.1 ... Operatoren in C++ und deren Bedeutung (Übersicht) ... 1033
A.2 ... Vorrangtabelle der Operatoren ... 1035
A.3 ... Schlüsselwörter von C++ ... 1037
A.4 ... Informationsspeicherung ... 1037
A.5 ... Zeichensätze ... 1044
Index ... 1051