C++: das umfassende Handbuch
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Buch |
Sprache: | German |
Veröffentlicht: |
Bonn
Rheinwerk Verlag
2018
|
Ausgabe: | 1. Auflage |
Schriftenreihe: | Rheinwerk Computing
|
Schlagworte: | |
Online-Zugang: | Inhaltstext Inhaltsverzeichnis |
Beschreibung: | "Aktuell zu C++17" - Auf dem Cover "Alle Besispielprojekte zum Download" - Auf dem Cover "Das Lehr- und Nachschlagewerk zu Modern C++; Sprachgrundlagen, OOP, Standardbibliothek, parallele Programmierung, GUI-Programmierung mit Qt u.v.m.; Guidelines und Techniken für gutes Coden" - Auf dem Cover |
Beschreibung: | 1067 Seiten Illustrationen, Diagramme 24 cm x 16.8 cm |
ISBN: | 9783836243605 3836243601 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV044468011 | ||
003 | DE-604 | ||
005 | 20180416 | ||
007 | t | ||
008 | 170831s2018 gw a||| |||| 00||| ger d | ||
015 | |a 17,N36 |2 dnb | ||
015 | |a 18,A04 |2 dnb | ||
016 | 7 | |a 1139059505 |2 DE-101 | |
020 | |a 9783836243605 |c Festeinband : EUR 39.90 (DE), EUR 41.10 (AT), CHF 49.90 (freier Preis) |9 978-3-8362-4360-5 | ||
020 | |a 3836243601 |c Hbk. |9 3-8362-4360-1 | ||
035 | |a (OCoLC)1003212634 | ||
035 | |a (DE-599)DNB1139059505 | ||
040 | |a DE-604 |b ger |e rda | ||
041 | 0 | |a ger | |
044 | |a gw |c DE | ||
049 | |a DE-M347 |a DE-91G |a DE-1102 |a DE-1050 |a DE-859 |a DE-860 |a DE-29T |a DE-11 |a DE-473 |a DE-573 |a DE-739 |a DE-92 |a DE-862 |a DE-20 | ||
082 | 0 | |a 005.133 |2 22/ger | |
082 | 0 | |a 004 |2 23 | |
084 | |a ST 250 |0 (DE-625)143626: |2 rvk | ||
084 | |a 004 |2 sdnb | ||
084 | |a DAT 358f |2 stub | ||
100 | 1 | |a Will, Torsten T. |d 1970- |0 (DE-588)1020320966 |4 aut | |
245 | 1 | 0 | |a C++ |b das umfassende Handbuch |c Torsten T. Will |
246 | 1 | 0 | |a C plus plus C ++ |
250 | |a 1. Auflage | ||
264 | 1 | |a Bonn |b Rheinwerk Verlag |c 2018 | |
300 | |a 1067 Seiten |b Illustrationen, Diagramme |c 24 cm x 16.8 cm | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
490 | 0 | |a Rheinwerk Computing | |
500 | |a "Aktuell zu C++17" - Auf dem Cover | ||
500 | |a "Alle Besispielprojekte zum Download" - Auf dem Cover | ||
500 | |a "Das Lehr- und Nachschlagewerk zu Modern C++; Sprachgrundlagen, OOP, Standardbibliothek, parallele Programmierung, GUI-Programmierung mit Qt u.v.m.; Guidelines und Techniken für gutes Coden" - Auf dem Cover | ||
650 | 0 | 7 | |a C++14 |0 (DE-588)1056920483 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a C++11 |0 (DE-588)7847900-9 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a C++17 |0 (DE-588)1147325278 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a C++ |0 (DE-588)4193909-8 |2 gnd |9 rswk-swf |
653 | |a programmieren | ||
653 | |a Programmierung | ||
653 | |a C++11 | ||
653 | |a C++14 | ||
653 | |a C++17 | ||
653 | |a guter Code | ||
653 | |a OOP | ||
653 | |a objektorientierte Programmierung | ||
653 | |a C++-Standardbibliothek | ||
653 | |a C-Programmierung | ||
653 | |a Qt | ||
653 | |a GUI-Entwicklung | ||
689 | 0 | 0 | |a C++ |0 (DE-588)4193909-8 |D s |
689 | 0 | 1 | |a C++11 |0 (DE-588)7847900-9 |D s |
689 | 0 | 2 | |a C++14 |0 (DE-588)1056920483 |D s |
689 | 0 | 3 | |a C++17 |0 (DE-588)1147325278 |D s |
689 | 0 | |5 DE-604 | |
710 | 2 | |a Rheinwerk Verlag |0 (DE-588)1081738405 |4 pbl | |
776 | 0 | 8 | |i Erscheint auch als |n Online-Ausgabe, PDF |z 978-3-8362-4361-2 |
856 | 4 | 2 | |m X:MVB |q text/html |u http://deposit.dnb.de/cgi-bin/dokserv?id=21fd8513cdfc4c0ba48b842fe6d83d09&prov=M&dok_var=1&dok_ext=htm |3 Inhaltstext |
856 | 4 | 2 | |m Digitalisierung UB Passau - ADAM Catalogue Enrichment |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=029868496&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
943 | 1 | |a oai:aleph.bib-bvb.de:BVB01-029868496 |
Datensatz im Suchindex
DE-BY-862_location | 2350 |
---|---|
DE-BY-FWS_call_number | 2350/ST 250 C01 W689 |
DE-BY-FWS_katkey | 729383 |
DE-BY-FWS_media_number | 083000521646 083000521647 |
_version_ | 1806529044595867648 |
adam_text |
Auf einen Blick
TEIL I
Grundlagen.
TEIL II
Objektorientierte Programmierung und mehr
TEIL III
Fortgeschrittene Themen
TEIL IV
Die Standardbibliothek .
27
251
481
591
TEIL V
Über den Standard hinaus
.953
Inhalt
Vorwort . 23
TEILI Grundlagen
1 Das C++-Handbuch 29
1.1 Neu und Modern . 30
1.2 »Dan«-Kapitel . 30
1.3 Darstellung in diesem Buch . 31
1.4 Verwendete Formatierungen . ? 31
1.5 Sony for my Denglish . 32
2 Programmieren in C++ 35
2.1 Übersetzen . 36
2.2 Übersetzungsphasen . 36
2.3 Aktuelle Compiler . 38
2.3.1 Gnu c++.;.L.;;.38
2.3.2 Clang++ der LLVM . .38
2.3.3 Microsoft Visual Studio .38
2.4 Entwicklungsumgebungen . 39
2.5 Die Kommandozeile unter Ubuntu . 40
2.5.1 Ein Programm erstellen .'.1.! 41
2.5.2 Automatisieren mit Makefile .J.;.1. 43
2.6 Die IDE »Microsoft Visual Studio Community« unter Windows . 44
2.7 Das Beispielprogramm beschleunigen. 46
3 C++für Umsteiger 49
5
.
"'■X.C
4 Die Grundbausteine von C++ 55
4.1 Kommentare. 58
4.2 Die »include«-Direktive . 58
4.3 Die Standardbibliothek . 58
4.4 Die Funktion »rnainO« . 59
4.5 Typen . 59
4.6 Variablen . 60
4.7 Initialisierung . 60
4.8 Ausgabe auf der Konsole . 61
4.9 Anweisungen . 61
4.10 Ohne Eile erklärt .;.;. 62
4.10.1 .Leerräume, Bezeichner und Token . 64
4.10.2 Kommentare . 65
4.10.3 Funktionen und Argumente . 66
4.10.4 Seiteneffekt-Operatoren . 67
4.10.5 Die »main«-Funktion . 68
4.10.6 Anweisungen . 70
4.10.7 Ausdrücke 72
' 4.10.8 Zuweisungen . 74
4.10.9 Typen . 75
4.10.10 Variablen-Deklaration, Definition und Initialisierung . 80
4.10.11 Initialisieren mit »auto« . 81
4.10.12 Details zur »include«-Direktive und »include« direkt . 81
4.10.13 Eingabe und Ausgabe . 83
4.10.14 Der Namensraum »std« . 83
4.11 Operatoren . 85
4.11.1 Operatoren und Operanden . 86
4.11.2 Überblick über Operatoren . 87
4.11.3 Arithmetische Operatoren «.^.».1. 87
4.11.4 Bitweise Arithmetik . 88
4.11.5 Zusammengesetzte Zuweisung . 91
4.11.6 Post-und Präinkrement sowie Post-und Prädekrement . 92
4.11.7 Relationale Operatoren . 92
4.11.8 Logische Operatoren .:. 93
4.11.9 Pointer- und Dereferenzierungsoperatoren .;. 94
4.11.10 Besondere Operatoren . 95
4.11.11 Funktionsähnliche Operatoren . 96
4.11.12 Operatorreihenfoige . 97
6
$g;i
r*'*»*«*r;r7?f ♦? ff npnijfffnrfrir?*’?; trrrf«T!i*'5
• . * * .,* \ ‘ Inhalt B
4.12
4.13
Eingebaute Datentypen .
4.12.1 Übersicht .
4.12.2 Eingebaute Datentypen initialisieren
4.123 Ganzzahlen .
4.12.4 Fließkommazahlen .
4.12.5 Wahrheitswerte .
4.12.6 Zeichentypen .
4.12.7 Komplexe Zahlen .
Undefiniertes und unspezifiziertes Verhalten
98
99
101
101
112
125
127
129
132
5 Guter Code, 1. Dan: Lesbar programmieren 135
5.1 Kommentare . 135
5.2 Dokumentation . 136
5.3 Einrückungen und Zeilenjänge . 137
5.4 Zeilen pro Funktion und Datei . 138
5.5 Klammern und Leerzeichen . 139
5.6 Namen . 140
6 Höhere Datentypen ;; 143
6.1 Strings und Streams . 144
6.2 Der Zeichenkettentyp »string« . 144
6.2.1 Initialisierung . 145
6.2.2 Funktionen und Methoden . 146
6.2.3 Andere Stringtypen . 147
6.3 Streams. 148
63.1 Eingabe-und Ausgabeoperatoren .:. 149
6.3.2 »getüne« . 151
633 Dateien für die Ein-und Ausgabe . 151
63.4 Manipulatoren . 153
63.5 Der Manipulator »endl« . 153
6.4 Behälter und Zeiger. 155
6.4.1 Container . 155
6.4.2 Parametrisierte Typen . 155
6.5 Die einfachen Sequenzcontainer .A.;. 156
6.5.1 »array« . 156
7
158
6.5.2, »vector«
6.6 Algorithmen .
6.7 Zeiger und C-Arrays .
6.7.1 Zeigertypen .
6.7.2 C-Arrays .
161
161
162
162
7 Funktionen i63
7.1 Deklaration und Definition einer Funktion . 164
7.2 Funktionstyp 165
7.3 Funktionen verwenden . 165
7.4 Eine Funktion definieren .’. 167
7.5 Mehr zu Parametern . 168
7.5.1 Call-by-Value .l.:.1. 168
7.5.2 Catl-by-Reference . 169
7.5.3 Konstante Referenzen . 170
7.5.4 Aufruf als Wert, Referenz oder konstante Referenz? . 170
7.6 Funktionskörper . 172
7.7 Parameter umwandeln . 173
7.8 Funktionen überladen . 175
7.9 Default-Parameter . 177
7.10 Beliebig viele Argumente . 179
7.11 Alternative Schreibweise zur Funktionsdeklaration . 179
7.12 Spezialitäten . 180
7.12.1 »noexcept« . 180
7.12.2 Inline-Funktionen . 181
7.12.3 »constexpr«. 182
7.12.4 Gelöschte Funktionen . 182
7.12.5 Spezialitäten bei Klassenmethoden . 182
8 Anweisungen im Detail iss
8.1 Der Anweisungsblock . 188
8.2 Die leere Anweisung. 190
8.3 Deklarationsanweisung . 191
8
i ■ -v.-i«iiir«!-
, .i 4-,ii L» J. • » • ?f . i. «.
i *i t *♦ %f, f j
Inhalt
8.4
8.5
8.6
8.7
8.8
8.9
8.10
8.11
8.12
8.13
8.14
8.15
8.16
Die Ausdrucksanweisung.
Die »if«-An Weisung .
Die »while«-Schleife .
Die »do-whi!e«-Schleife .
Die »for«-Schleife .
Die bereichsbasierte »for«-Schleife .
Die »switch«-Verzweigung.
Die »break«-Anweisung.
Die »continue«-Anweisung.
Die »return«-Anweisung.
Die »goto«-AnWeisung .
Der »try-catch«-B!ock und »throw« .
Zusammenfassung .
192
193
195
197
198
200
202
206
207
207
209
210
212
9 Ausdrücke im Detail 213
9.1 Berechnungen und Seiteneffekte . 214
9.2 Arten von Ausdrücken . 215
9.3 Literale .1. 216
9.4 Bezeichner . 216
9.5 Klammern . 217
9.6 Funktionsaufruf und Index-Zugriff. 218
9.7 Zuweisung . 218
9.8 Typumwandlung . 220
10 Fehlerbehandlung 221
10.1 Fehlerbehandlung mit Fehlercodes . 223
10.2 Was ist eine Ausnahme? . 226
10.2.1 Ausnahmen auslösen und behandeln . 227
10.2.2 Aufrufstapel abwickeln . 228
10.3 Kleinere Fehlerbehandlungen . 229
10.4 Weiterwerfen -»rethrow« . 229
9
10.5 Die Reihenfolge im »catch« .:. 230
10.5.1 Kein »finally« . 231
10.5.2 Exceptions der Standardbibliothek . 231
10.6 Typen für Exceptions . 232
10.7 Wenn eine Exception aus »main« herausfällt . 233
11 Guter Code, 2. Dan: Modularisierung 235
11.1 Programm, Bibliothek, Objektdatei . 235
11.2 Bausteine .236
11.3 Trennen der Funktionalitäten . 237
11.4 Ein modulares Beispielprojekt . 238
11.4.1 . Namensräume . 241
11.4.2 Implementierung . 242
11.4.3 Die Bibliothek nutzen . 247
11.5 Spezialthema: Unity-Builds . 249
TEIL II Objektorientierte Programmierung und mehr
12 Von der Struktur zur Klasse 253
12.1 Initialisierung . 255
12.2 Rückgabe eigener Typen .‘. 256
12.3 Methoden statt Funktionen .1. 257
12.4 Das bessere »drucke« . 260
12.5 Eine Ausgabe wie jede andere . 262
12.6 Methoden inline definieren . 263
12.7 Implementierung und Definition trennen . 264
12.8 Initialisierung per Konstruktor . 265
12.8.1 Me mber-Default werte in der Deklaration . 267
12.8.2 Konstruktor-Delegation . 268
12.8.3 Defaultwerte für die Konstruktor-Parameter . 269
12.8.4 »init«-Methode nicht im Konstruktor aufrufen . 270
12.8.5 Exceptions im Konstruktor . 271
10
îï.s»î.»ü — ii ■ p
i ■«].* .âtÜxJ!Md}UhlïiïUlt*£i,VJ**i¡r.» .i-U.* pLt^i
1T ft 'J i Itèri bîwfsiitfi
* *?** ? ?■?j»rw* *? *? r
12.9 Struktur oder Klasse?.
12.9.1 Kapselung .
12.9.2 «public« und «private«, Struktur und Klasse .
12.9.3 Daten mit «struct«, Verhalten mit »dass« .
12.9.4 Initialisierung von Typen mit privaten Daten .
12.10
12.11
Zwischenergebnis .
Verwendung eigener Datentypen .
12.11.1 Klassen als Werte verwenden .
12.11.2 Konstruktoren nutzen .
12.11.3 Typumwandlungen .
12.11.4 Kapseln und entkapseln .
12.11.5 Typen lokal einen Namen geben
12.12 Typinferenz mit »auto« .
12.13 Eigene Klassen in Standardcontainern
271
273
273
273
274
275
276
278
281
282
284
288
291
294
IS Namensräume und Qualifizierer 297
13.1 Der Namensraum »std« .:.297
13.2 Anonymer Namensraum . 301
13.3 »static« macht lokal . 303
13.4 »static« teilt gern . 303
v • : u. ; ‘ir V' ?!
13.5 »static« macht dauerhaft .!. 306
13.5.1 »inline namespace« . 308
13.6 Zusammenfassung .;. 309
13.7 Const . 310
13.7.1 Con st-Para meter . 311
13.7.2 Const-Methoden . 312
13.7.3 Const-Variablen . 313
13.7.4 Const-Rückgaben . 314
13.7.5 Const zusammen mit »static« . 318
13.7.6 Noch konstanter mit »constexpr« . 319
13.7.7 Un-Const mit »mutable« .1.^. 322
13.7.8 Const-Korrektheit .;. 323
13.7.9 Zusammenfassung . 324
13.8 Flüchtig mit »volatile« .\. 324
11
Inhalt
14 Guter Code, 3. Dan: Testen 327
14.1 Arten des Tests . 327
14.1.1 Refactoring . 329
14.1.2 Unittests . 329
14.1.3 Sozial oder solitär . 331
14.1.4 Doppelgänger . 333
14.1.5 Suites . 334
14.2 Frameworks . 335
14.2.1 Arrange, Act, Assert .;. 337
14.2.2 Frameworks zur Auswahl .'. 338
14.3 Boost.Test . 339
14.4 Hilfsmakros für Assertions . 343
14.5 Ein Beispielprojekt mit Unittests . 346
14.5.1 Privates und Öffentliches testen . 347
14.5.2 Ein automatisches Testmodul . 348
14.5.3 Test compilieren . 351
14.5.4 Die Testsuite selbst zusammenbauen . 351
14.5.5 Testen von Privatem . 355
14.5.6 Parametrisierte Tests . 356
15 Vererbung 359
15.1 Beziehungen . 360
15.1.1 Hat-ein-Komposition . 360
15.1.2 Hat-ein-Aggregation . 360
15.1.3 Ist-ein-Vererbung . 361
15.1.4 Jst-lnstanz-von versus Ist-ein-Beziehung . 362
15.2 Vererbung in C++ 362
15.3 Hat-ein versus ist-ein . 363
15.4 Gemeinsamkeiten finden . 364
15.5 Abgeleitete Typen erweitern . 366
15.6 Methoden überschreiben . 367
15.7 Wie Methoden funktionieren . 368
15.8 Virtuelle Methoden . 370
15.9 Konstruktoren in Klassenhierarchien . 372
12
15.10 Typumwandlungin Klassenhierarchien . 373
15.10.1 Die Vererbungshierarchie aufwärts umwandeln . 373
15.10.2 Die Vererbungshierarchie abwärts umwandeln . 374
15.10.3 Referenzen behalten auch die Typinformation . 374
15.11 Wann virtuell? . .375
15.12 Andere Designs zur Erweiterbarkeit. 376
16 Der Lebenszyklus von Klassen 379
16.1 Erzeugung und Zerstörung . 380
16.2 Temporary: kurzlebige Werte .;. . 382
16.3 Der Destruktor zum Konstruktor . 383
16.3.1 Kein Destruktor nötig . 385
16.3.2 Ressourcen im Destruktor . 385
16.4 Yoda-Bedingung .;. 387
16.5 Konstruktion, Destruktion und Exceptions . 389
16.6 Kopieren . 390
16.7 Zuweisungsoperator . 393
16.8 Streichen von Methoden . 396
16.9 Verschiebeoperationen . 398
16.9.1 Was der Compiler generiert . 402
16.10 Operatoren . 403
16.11 Eigene Operatoren in einem Datentyp . 406
16.12 Besondere Klassenformen . 411
16.12.1 Abstrakte Klassen und Methoden .411
16.12.2 Aufzählungsklassen .t.412
17 Guter Code, 4. Dan:
Sicherheit, Qualität und Nachhaltigkeit 415
17.1 Die Nuller-Regel . 415
17.1.1 Die großen Fünf. 415
17.1.2 Hilfskonstrukt per Verbot . 416
17.1.3 Die Nuller-Regel und ihr Einsatz . 417
17.1.4 Ausnahmen von der Nuller-Regel . 418
13
17.2
RAU - Resource Acquisition Is Initialization
17.2.1 Ein Beispiel mitC .
17.2.2 Besitzende Raw-Pointer .
17.2.3 Von C nach C++ .
17.2.4 Es muss nicht immer eine Exception sein
17.2.5 Mehrere Konstruktoren .
17.2.6 Mehrphasige Initialisierung .,.
17.2.7 Definieren, wo es gebraucht wird .
17.2.8 Nothrow-new
420
420
422
423
425
426
426
427
427
18 Spezielles für Klassen 429
18.1 Darfalles sehen - »friend«-Klassen . 429
18.2 non-publio-Vererbung . . 434
*'r 18.2.1 Auswirkungen auf die Außenwelt 435
18.2.2 Nicht-öffentliche Vererbung in der Praxis . 437
18.3 Signatur-Klassen als Interfaces . 439
18.4 Multiple Vererbung . 443
18.4.1 Multiple Vererbung in der Praxis . 444
18.4.2 Achtung bei Typumwandlungen von Zeigern . 448
18.4.3 Das Beobachter-Muster als praktisches Beispiel . 450
18.5 Rautenförmige multiple Vererbung - »virtual« für Klassenhierarchien . 452
18.6 Literale Datentypen - »constexpr« für Konstruktoren . 456
19 Güter Code, 5. Dan:
Klassisches objektorientiertes Design 459
19.1 Objekte in C++ . 461
19.2 Objektorientiert designen . 462
19.2.1 SOLID .:. 462
19.2.2 Seien Sie nicht STUPID .1.,.;. 480
14
TEIUII Fortgeschrittene Themen
20 Zeiger 483
20.1 Adressen .
20.2 Zeiger .
20.3 Gefahren von Aliasing .
20.4 Heapspeicher und Stapelspeicher.
20.4.1 Der Stapel .
20.4.2 DerHeap .
20.5 Smarte Pointer .
20.5.1 »unique_ptr« .
20.5.2 »shared_ptr« .
20.6 Rohe Zeiger .
20.7 C-Array$ .
20.7.1 Rechnen mit Zeigern .
20.7.2 Verfall von C-Arrays .
20.7.3 Dynamische C-Arrays .
20.7.4 Zeichenkettenliterale .
20.8 Iteratoren .
20.9 Zeiger als Iteratoren .
20.10 Zeiger im Container .
20.11 Die Ausnahme: wann das Wegräumen nicht nötig ist
484
485
487
489
489
490
492
494
498
501
506
506
507
509
510
511
513
513
514
21 Makros
517
21.1 Der Präprozessor .:. 518
21.2 Vorsicht vor fehlenden Klammern .’. 521
21.3 Vorsicht vor Mehrfachausführung. 522
21.4 Typvariabilität von Makros . 523
21.5 Zusammenfassung. 526
15
22 Schnittstelle zu C 527
22.1 Mit Bibliotheken arbeiten . 528
22.2 C-Header . 529
22.3 C-Ressourcen . 532
22.4 »void«-Pointer . 532
22.5 Daten lesen . 533
22.6 Das Hauptprogramm . 534
22.7 Zusammenfassung . 535
23 Templates 537
23.1 Funktionstemplates . 538
23.1.1 Überladung . 539
23.1.2 Ein Typ als Parameter. 540
23.1.3 Funktionskörper eines Funktionstemplates . 540
23.1.4 Zahlen als Templateparameter. 542
23.1.5, ,. Viele Funktionen . 543
23.1.6 Parameter mit Extras . 544
23.1.7 Methodentemplates sind auch nur Funktionstemplates . 546
23.2 Funktionstemplates in der Standardbibliothek . 547
23.2.1 Iteratoren statt Container als Templateparameter . 548
23.2.2 Beispiel: Informationen überzahlen . 550
23.3 Eine Klasse als Funktion . 551
23.3.1 Werte für einen »function«-Parameter. 552
23.3.2 C-Funktionspointer . 553
23.3.3 Die etwas andere Funktion . 555
23.3.4 Praktische Funktoren . 558
23.3.5 Algorithmen mit Funktoren . 559
23.3.6 Anonyme Funktionen alias Lambda-Ausdrücke . 560
23.3.7 Templatefunktionen ohne »template«, aber mit »auto« . 564
23.4 Templateklassen . 565
23.4.1 Klassentemplates implementieren . 565
23.4.2 Methoden von Klassentemplates implementieren . 566
23.4.3 Objekte aus Klassentemplates erzeugen . 568
23.4.4 Klassentemplates mit mehreren formalen Datentypen . 570
23.4.5 Klassentemplates mit Non-Type-Parameter. 571
23.4.6 Klassentemplates mit Default . 573
23.4.7 Klassentemplates spezialisieren . 574
16
lila
: ?*xrntT r^T^n f r *ti * ;w »♦ fT's * c; *** -' *'"
. ■ .
üiin!UiKpjikiUp',;:i ¿,.".
-; Inhalte
23.5 Templates mit variabler Argumentanzahl
576
23.6 Eigene Literale . 580
23.6.1 Was sind Literale? . 581
23.6.2 Namensregeln . 582
23.6.3 Phasenweise . 582
23.6.4 Überladungsvarianten .:.583
23.6.5 Benutzerdefiniertes Litera! mittels Template . 584
23.6.6 Roh oder gekocht .:. 587
23.6.7 Automatisch zusammengefügt . 588
23.6.8 Unicodeliterale . 588
TEIL IV Die Standardbibliothek
24 Container 593
24.1 Grundlagen . 594
24.1.1 Wiederkehrend .;. 594
24.1.2 Abstrakt . 595
24.1.3 Operationen . 596
24.1.4 Komplexität . 597
24.1.5 Container und ihre Iteratoren . 598
24.1.6 Algorithmen . 600
24.2 Iteratoren-Grundlagen . 601
24.2.1 Iteratoren aus Containern .602
24.2.2 Mehr Funktionalität mit Iteratoren .r. 603
24.3 Allokatoren: Speicherfragen . 605
24.4 Container-Gemeinsamkeiten.;. 607
24.5 Ein Überblick über die Standardcontainer-Klassen .608
24.5.1 Typaliase der Container . 609
24.6 Die sequenziellen Containerklassen . 612
24.6.1 Gemeinsamkeiten und Unterschiede . 614
24.6.2 Methoden von Sequenzcontainern . 615
24.6.3 »vector« . 618
24.6.4 »array« .‘.631
24.6.5 »deque« . 636
24.6.6 »Iist« . 639
24.6.7 »forwardjist« .v. 642
24.7 Assoziativ und geordnet . 647
24.7.1 Gemeinsamkeiten und Unterschiede . 648
17
Inhalt
24.7.2 Methoden der geordneten assoziativen Container. 649
24.7.3 »set« . 651
24.7.4 »map« . 663
24.7.5 »multiset« . 670
24.7.6 »multimap« . 674
24.8 Nur assoziativ und nicht garantiert. 678
24.8.1 Gemeinsamkeiten und Unterschiede . 682
24.8.2 Methoden der ungeordneten assoziativen Container . 684
24.8.3 . »unordered_set« . 685
24.8.4 ,»unordered_map« . 693
24.8.5 »unorderedjnultiset« . 698
24.8.6 »unorderedjnultimap« . 703
24.9 Container-Adapter . . 706
24.10 Sonderfälle: »string«, »basic_string« und »vector char « . 707
24.11 Sonderfälle: »vector bool «, »array bool,n « und »bitset n « . 708
24.11.1 Dynamisch und kompakt: »vector bool « . 708
24.11.2 Statisch: »array bool,n « und »bitset n « . 708
24.12 Sonderfall: Value-Array mit »valarrayo« . 711
25 Container-Unterstützung 721
25.1 Algorithmen . 721
25.2 Iteratoren . 723
25.3 Iterator-Adapter . 723
25.4 Algorithmen der Standardbibliothek .;. 724
25.5 Liste der Algorithmusfunktionen . 726
25.6 Kopie statt Zuweisung - Werte in uninitialisierten Speicherbereichen . 740
25.7 Eigene Algorithmen . 741
26 Guter Code, 6. Dan:
Für jede Aufgabe der richtige Container 745
26.1 Alle Container nach Aspekten sortiert . 745
26.1.1 Wann ist ein »vector« nicht die beste Wahl? . 745
26.1.2 immer sortiert: »set«, »map«, »multiset« und »multimap« . 746
26.1.3 im Speicher hintereinander: »vector«, »array« . 746
18
26.1.4 Einfügung billig: »list« .747
26.1.5 Wenig Speicheroverhead: »vector«, »array« . 748
26.1.6 Größe dynamisch: alle außer »array« .:. 749
26.2 Rezepte für Container.:.750
26.2.1 Zwei Phasen? »vector« als guter »set«-Ersatz . 751
26.2.2 Den Inhalt eines Containers auf einem Stream ausgeben .752
26.2.3 So statisch ist »array« gar nicht . 753
26.3 Iteratoren sind mehr als nur Zeiger . 756
26.4 Algorithmen je nach Container unterschiedlich implementieren . 758
27 Streams 76i
27.1 Ein-und Ausgabekonzept . 761
27.2 Globale, vordefinierte Standardstreams . 762
27.3 Methoden für die Aus- und Eingabe von Streams . 764
27.3.1 Methoden für die unformatierte Ausgabe J.:. 764
27.3.2 Methoden für die (unformatierte) Eingabe . 765
27.4 Fehlerbehandlung und Zustand von Streams . 768
27.4.1 Methoden für die Behandlung von Fehlern bei Streams 769
27.5 Streams manipulieren und formatieren . 771
27.5.1 Manipulatoren . 772
27.5.2 Eigene Manipulatoren ohne Argumente erstellen . 777
27.5.3 Eigene Manipulatoren mit Argumenten erstellen . 779
27.5.4 Format-Flags direkt ändern .i.,.;.780
27.6 Streams für die Dateiein- und Dateiausgabe .U. 782
27.6.1 Die Streams »ifstream«, »ofstream« und »fstream« .:. 783
27.6.2 Verbindung zu einer Datei hersteilen .~.783
27.6.3 Lesen und Schreiben .'.788
27.6.4 Wahlfreier Zugriff . 795
27.7 Streams für Strings . 796
27.8 Streampuffer . 801
28 Standardbibliothek-Extras sos
28.1 »patr« und »tuple« . 805
28.1.1 Mehrere Werte zurückgeben . 806
19
Inhalt
28.2 Reguläre Ausdrücke . 812
28.2.1 Matchen und Suchen . 813
28.2.2 Ergebnis und Teile davon . 813
28.2.3 Gefundenes Ersetzen . 814
28.2.4 Reich an Varianten . 814
28.2.5 Iteratoren . 815
28.2.6 Matches .;. 816
28.2.7 Optionen . 816
28.2.8 Geschwindigkeit . 816
28.2.9 Standardsyntax leicht gekürzt 817
28.2.10 Anmerkungen zu regulären Ausdrücken in C++ . 818
28.3 Zufall . 821
28.3.1 Einen Würfel werfen .;. 822
28.3.2 Echter Zufall . 824
28.3.3 Andere Generatoren . 824
28.3.4 Verteilungen . 826
28.4 Mathematisches . 830
28.4.1 Brüche und Zeiten - » ratio « und » chrono « . 830
28.4.2 Numerik mit » numeric « . 843
28.4.3 Vordefinierte Suffixe für benutzerdefinierte Literale . 847
28.5 Systemfehlerbehandlung mit »system_error« . 849
28.5.1 »errorjiode« und »error_condition« . 851
28.5.2 Fehlerkategorien . 855
28.5.3 Eigene Fehlercodes . 855
28.5.4 »system_error«-Exception . 857
28.6 Laufzeit-Typinformationen -» typeinfo « und » typeindex « . 858
28.7 Hilfsklassen rund um Funktoren - » functional « . 862
28.7.1 Funktionsobjekte . 862
28.7.2 Funktionsgeneratoren . 866
28.8 Ausblick auf C++17 . 869
28.8.1 »variant« . 869
28.8.2 »optional« und »any« . 870
28.8.3 »string_view« . 871
28.8.4 »filesystem« . 872
28.8.5 Spezielle mathematische Funktionen . 872
28.8.6 »sample« . 873
28.8.7 »search« . 874
28.8.8 »byte« .:. 874
20
29 Threads - Programmieren mit Mehrläufigkeit 875
29.1 C++-Threading-Grundlagen .876
29.1.1 Einer Threadfunktion Parameter übergeben .; 881
29.1.2 Einen Thread verschieben .:.;. 886
29.1.3 Wie viele Threads starten? . 888
29.1.4 Welcher Thread bin ich? . 891
29.2 Gemeinsame Daten . 891
29.2.1 Daten mit Mutexen schützen . 892
29.2.2 Data Races . 895
29.2.3 Interface-Design für Multithreading . 896
29.2.4 Sperren können zum Patt führen . 901
29.2.5 Flexibleres Sperren mit »uniquejock«. 903
29.3 Andere Möglichkeiten zur Synchronisation . 904
29.3.1 Nur einmal aufrufen mit »once_flag« und »ca!l_once« .904
29.3.2 Sperren zählen mit »recursive_mutex« . 907
29.4 Im eigenen Speicher mit »threadjocal« .'.'.V. 908
29.5 Mit »condition_variable« auf Ereignisse warten . 909
29.6 Einmal warten mit »future« . 914
29.6.1 Ausnahmebehandlung bei »future« . 919
29.6.2 »promise« . 921
29.7 Atomics . 924
29.8 Zusammenfassung . 930
29.9 Ausblick auf C++17 . 932
TEILV Über den Standard hinaus
30 Guter Code, 7. Dan: Richtlinien 935
30.1
30.2
Guideline Support Library .
C++ Core Guidelines .
30.2.1 Motivation .
30.2.2 Typsicherheit .
30.2.3 Nutzen Sie RAH .
30.2.4 Klassenhierarchien .
30.2.5 Generische Programmierung .
30.2.6 Lassen Sie sich nicht von Anachronismen verwirren .
936
937
937
938
940
942
•945
948
21
SMliliil.
H5. .^-«.i(»i«i.V:.k.j» ,'i,'.iit'-i-‘-4!' 'tt.*-i -' »¿.riiVi»î*(««
31 GUI-ProgrammierungmitQt
951
31.1 Ein erstes Miniprogramm .
r -■ 31.1.1 Kurze Übersicht über die Oberfläche von Qt Creator
31.1.2 Ein einfaches Projekt erstellen .
31.2 Objektbäume und Besitz .
31.3 Signale und Slots .
31.3.1 Verbindung zwischen Signal und Slot hersteilen ’.
31.3.2 Signal und Slot mithilfe der Qt-Referenz ermitteln .
31.4 Klassenhierarchie von Qt .
31.4.1 Basisklasse »QObject« .
31.4.2 Weitere wichtige Klassen .
31.5 Eigene Widgets mit dem Qt Designer erstellen .
31.6 Widgets anordnen .
31.6.1 Grundlegende Widgets für das Layout .
31.7 Dialoge erstellen mit »QDialog« .
31.8 Vorgefertigte Dialoge von Qt .
31.8.1 »QMessageBox« - der klassische Nachrichtendialog
31.8.2 »QFileDialog«-der Dateiauswahldialog .
31.8.3 »QlnputDialog« - Dialog zur Eingabe von Daten .
31.8.4 Weitere Dialoge .
31.9 Eigenen Dialog mit dem Qt Designer erstellen .
31.10 Grafische Bedienelemente von Qt(Qt-Widgets).
31.10.1 Schaltflächen (Basisklasse »QAbstractButton«) .
31.10.2 Container-Widgets (Behälter-Widgets) .
31.10.3 Widgets zur Zustandsanzeige .
31.10.4 Widgets zur Eingabe .
31.10.5 Onlinehiifen .
31.11 Anwendungen in einem Hauptfenster .
31.11.1 Die Klasse für das Hauptfenster »QMa in Window« .
31.12 Zusammenfassung .
955
956
957
966
967
967
970
987
987
987
990
996
996
1000
1008
1008
1009
1011
1015
1015
1031
1031
1033
1034
1035
1036
1037
1037
1048
CheatSheet .
1052
Index .
1055
22 |
any_adam_object | 1 |
author | Will, Torsten T. 1970- |
author_GND | (DE-588)1020320966 |
author_facet | Will, Torsten T. 1970- |
author_role | aut |
author_sort | Will, Torsten T. 1970- |
author_variant | t t w tt ttw |
building | Verbundindex |
bvnumber | BV044468011 |
classification_rvk | ST 250 |
classification_tum | DAT 358f |
ctrlnum | (OCoLC)1003212634 (DE-599)DNB1139059505 |
dewey-full | 005.133 004 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 005 - Computer programming, programs, data, security 004 - Computer science |
dewey-raw | 005.133 004 |
dewey-search | 005.133 004 |
dewey-sort | 15.133 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
edition | 1. Auflage |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>00000nam a2200000 c 4500</leader><controlfield tag="001">BV044468011</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20180416</controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">170831s2018 gw a||| |||| 00||| ger d</controlfield><datafield tag="015" ind1=" " ind2=" "><subfield code="a">17,N36</subfield><subfield code="2">dnb</subfield></datafield><datafield tag="015" ind1=" " ind2=" "><subfield code="a">18,A04</subfield><subfield code="2">dnb</subfield></datafield><datafield tag="016" ind1="7" ind2=" "><subfield code="a">1139059505</subfield><subfield code="2">DE-101</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9783836243605</subfield><subfield code="c">Festeinband : EUR 39.90 (DE), EUR 41.10 (AT), CHF 49.90 (freier Preis)</subfield><subfield code="9">978-3-8362-4360-5</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">3836243601</subfield><subfield code="c">Hbk.</subfield><subfield code="9">3-8362-4360-1</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)1003212634</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)DNB1139059505</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rda</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">ger</subfield></datafield><datafield tag="044" ind1=" " ind2=" "><subfield code="a">gw</subfield><subfield code="c">DE</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-M347</subfield><subfield code="a">DE-91G</subfield><subfield code="a">DE-1102</subfield><subfield code="a">DE-1050</subfield><subfield code="a">DE-859</subfield><subfield code="a">DE-860</subfield><subfield code="a">DE-29T</subfield><subfield code="a">DE-11</subfield><subfield code="a">DE-473</subfield><subfield code="a">DE-573</subfield><subfield code="a">DE-739</subfield><subfield code="a">DE-92</subfield><subfield code="a">DE-862</subfield><subfield code="a">DE-20</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">005.133</subfield><subfield code="2">22/ger</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">004</subfield><subfield code="2">23</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 250</subfield><subfield code="0">(DE-625)143626:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">004</subfield><subfield code="2">sdnb</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">DAT 358f</subfield><subfield code="2">stub</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Will, Torsten T.</subfield><subfield code="d">1970-</subfield><subfield code="0">(DE-588)1020320966</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">C++</subfield><subfield code="b">das umfassende Handbuch</subfield><subfield code="c">Torsten T. Will</subfield></datafield><datafield tag="246" ind1="1" ind2="0"><subfield code="a">C plus plus C ++</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">1. Auflage</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Bonn</subfield><subfield code="b">Rheinwerk Verlag</subfield><subfield code="c">2018</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">1067 Seiten</subfield><subfield code="b">Illustrationen, Diagramme</subfield><subfield code="c">24 cm x 16.8 cm</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="490" ind1="0" ind2=" "><subfield code="a">Rheinwerk Computing</subfield></datafield><datafield tag="500" ind1=" " ind2=" "><subfield code="a">"Aktuell zu C++17" - Auf dem Cover</subfield></datafield><datafield tag="500" ind1=" " ind2=" "><subfield code="a">"Alle Besispielprojekte zum Download" - Auf dem Cover</subfield></datafield><datafield tag="500" ind1=" " ind2=" "><subfield code="a">"Das Lehr- und Nachschlagewerk zu Modern C++; Sprachgrundlagen, OOP, Standardbibliothek, parallele Programmierung, GUI-Programmierung mit Qt u.v.m.; Guidelines und Techniken für gutes Coden" - Auf dem Cover</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">C++14</subfield><subfield code="0">(DE-588)1056920483</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">C++11</subfield><subfield code="0">(DE-588)7847900-9</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">C++17</subfield><subfield code="0">(DE-588)1147325278</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">C++</subfield><subfield code="0">(DE-588)4193909-8</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="653" ind1=" " ind2=" "><subfield code="a">programmieren</subfield></datafield><datafield tag="653" ind1=" " ind2=" "><subfield code="a">Programmierung</subfield></datafield><datafield tag="653" ind1=" " ind2=" "><subfield code="a">C++11</subfield></datafield><datafield tag="653" ind1=" " ind2=" "><subfield code="a">C++14</subfield></datafield><datafield tag="653" ind1=" " ind2=" "><subfield code="a">C++17</subfield></datafield><datafield tag="653" ind1=" " ind2=" "><subfield code="a">guter Code</subfield></datafield><datafield tag="653" ind1=" " ind2=" "><subfield code="a">OOP</subfield></datafield><datafield tag="653" ind1=" " ind2=" "><subfield code="a">objektorientierte Programmierung</subfield></datafield><datafield tag="653" ind1=" " ind2=" "><subfield code="a">C++-Standardbibliothek</subfield></datafield><datafield tag="653" ind1=" " ind2=" "><subfield code="a">C-Programmierung</subfield></datafield><datafield tag="653" ind1=" " ind2=" "><subfield code="a">Qt</subfield></datafield><datafield tag="653" ind1=" " ind2=" "><subfield code="a">GUI-Entwicklung</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">C++</subfield><subfield code="0">(DE-588)4193909-8</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="1"><subfield code="a">C++11</subfield><subfield code="0">(DE-588)7847900-9</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="2"><subfield code="a">C++14</subfield><subfield code="0">(DE-588)1056920483</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="3"><subfield code="a">C++17</subfield><subfield code="0">(DE-588)1147325278</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="710" ind1="2" ind2=" "><subfield code="a">Rheinwerk Verlag</subfield><subfield code="0">(DE-588)1081738405</subfield><subfield code="4">pbl</subfield></datafield><datafield tag="776" ind1="0" ind2="8"><subfield code="i">Erscheint auch als</subfield><subfield code="n">Online-Ausgabe, PDF</subfield><subfield code="z">978-3-8362-4361-2</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">X:MVB</subfield><subfield code="q">text/html</subfield><subfield code="u">http://deposit.dnb.de/cgi-bin/dokserv?id=21fd8513cdfc4c0ba48b842fe6d83d09&prov=M&dok_var=1&dok_ext=htm</subfield><subfield code="3">Inhaltstext</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">Digitalisierung UB Passau - ADAM Catalogue Enrichment</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=029868496&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="943" ind1="1" ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-029868496</subfield></datafield></record></collection> |
id | DE-604.BV044468011 |
illustrated | Illustrated |
indexdate | 2024-08-05T08:45:50Z |
institution | BVB |
institution_GND | (DE-588)1081738405 |
isbn | 9783836243605 3836243601 |
language | German |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-029868496 |
oclc_num | 1003212634 |
open_access_boolean | |
owner | DE-M347 DE-91G DE-BY-TUM DE-1102 DE-1050 DE-859 DE-860 DE-29T DE-11 DE-473 DE-BY-UBG DE-573 DE-739 DE-92 DE-862 DE-BY-FWS DE-20 |
owner_facet | DE-M347 DE-91G DE-BY-TUM DE-1102 DE-1050 DE-859 DE-860 DE-29T DE-11 DE-473 DE-BY-UBG DE-573 DE-739 DE-92 DE-862 DE-BY-FWS DE-20 |
physical | 1067 Seiten Illustrationen, Diagramme 24 cm x 16.8 cm |
publishDate | 2018 |
publishDateSearch | 2018 |
publishDateSort | 2018 |
publisher | Rheinwerk Verlag |
record_format | marc |
series2 | Rheinwerk Computing |
spellingShingle | Will, Torsten T. 1970- C++ das umfassende Handbuch C++14 (DE-588)1056920483 gnd C++11 (DE-588)7847900-9 gnd C++17 (DE-588)1147325278 gnd C++ (DE-588)4193909-8 gnd |
subject_GND | (DE-588)1056920483 (DE-588)7847900-9 (DE-588)1147325278 (DE-588)4193909-8 |
title | C++ das umfassende Handbuch |
title_alt | C plus plus C ++ |
title_auth | C++ das umfassende Handbuch |
title_exact_search | C++ das umfassende Handbuch |
title_full | C++ das umfassende Handbuch Torsten T. Will |
title_fullStr | C++ das umfassende Handbuch Torsten T. Will |
title_full_unstemmed | C++ das umfassende Handbuch Torsten T. Will |
title_short | C++ |
title_sort | c das umfassende handbuch |
title_sub | das umfassende Handbuch |
topic | C++14 (DE-588)1056920483 gnd C++11 (DE-588)7847900-9 gnd C++17 (DE-588)1147325278 gnd C++ (DE-588)4193909-8 gnd |
topic_facet | C++14 C++11 C++17 C++ |
url | http://deposit.dnb.de/cgi-bin/dokserv?id=21fd8513cdfc4c0ba48b842fe6d83d09&prov=M&dok_var=1&dok_ext=htm http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=029868496&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT willtorstent cdasumfassendehandbuch AT rheinwerkverlag cdasumfassendehandbuch AT willtorstent cplusplusc AT rheinwerkverlag cplusplusc |
Beschreibung
Schweinfurt Teilbibliothek Logistik
Signatur: |
2350 ST 250 C01 W689 |
---|---|
Exemplar 1 | nicht ausleihbar Checked out – Rückgabe bis: 01.01.2099 |
Exemplar 2 | nicht ausleihbar Checked out – Rückgabe bis: 31.12.2099 |