
Einstieg in C++
Ideal für Programmiereinsteiger. Inkl. Einführung in die objektorientierte Programmierung. Mit Übungsaufgaben und Musterlösungen
Thomas Theis(Author)
Rheinwerk (Publisher)
1st Edition
Published on 28. September 2017
Book
Paperback/Softback
516 pages
978-3-8362-4510-4 (ISBN)
Article exhausted; check for reprint
Description
Mit diesem Buch gelingt Ihnen der Einstieg in die C++-Entwicklung mühelos. Anschauliche Erklärungen, praxisnahe Beispiele und Übungen begleiten Sie von den ersten Schritten bis zum fertigen Programm. Sie lernen alle wichtigen Themen wie Vererbung, Objektorientierung, Polymorphie, GUI-Entwicklung und Datenbanken. Kenntnisse in C oder einer anderen Sprache werden nicht vorausgesetzt.
Aus dem Inhalt:
Sprachgrundlagen
Referenzen und Zeiger
Objektorientierte Programmierung
Vererbung und Polymorphie
Datenströme verarbeiten
Arbeiten mit Containern
GUI-Entwicklung mit Qt
Datenbanken mit SQLite verwalten
Aus dem Inhalt:
Sprachgrundlagen
Referenzen und Zeiger
Objektorientierte Programmierung
Vererbung und Polymorphie
Datenströme verarbeiten
Arbeiten mit Containern
GUI-Entwicklung mit Qt
Datenbanken mit SQLite verwalten
Reviews / Votes
»Wer C++ lernen will oder eine Auffrischung auf C++11 benötigt, dürfte Gefallen an dem knapp 520 Seiten starken Lehrbuch finden.«More details
Language
German
Place of publication
Bonn
Germany
Publishing group
Rheinwerk
Edition type
New edition
Product notice
Klappenbroschur
Dimensions
Height: 23 cm
Width: 17.2 cm
ISBN-13
978-3-8362-4510-4 (9783836245104)
Schweitzer Classification
Other editions
New editions

Book
07/2020
2nd Edition
Rheinwerk
€24.90
Available immediately
Previous edition

Book
01/2009
4th Edition
Galileo Computing
€24.90
Article exhausted; check for reprint
Person
Author
Thomas Theis ist Dipl.-Ing. für Technische Informatik und arbeitet als Berater und Trainer. Seit vielen Jahren gibt er als EDV-Dozent Kurse in verschiedenen Programmiersprachen. Er ist Autor vieler erfolgreicher Fachbücher.
Content
1. Eine erste Einführung ... 17
1.1 ... Was machen wir mit C++? ... 17
1.2 ... Was benötige ich zum Programmieren? ... 18
1.3 ... Die Entwicklung von C++ ... 18
1.4 ... So sieht das erste Programm aus ... 19
1.5 ... Kommentieren Sie Ihre Programme ... 20
2. Arbeiten mit Zahlen und Operatoren ... 23
2.1 ... Wie speichere ich Zahlen? ... 23
2.2 ... Rechnen mit Operatoren ... 25
2.3 ... Fehler suchen ... 27
2.4 ... Wie können Daten eingegeben werden? ... 29
2.5 ... Zahlen formatieren mit Manipulatoren ... 30
2.6 ... Zuweisungen kürzer schreiben ... 32
2.7 ... Mehr über die Speicherung von Zahlen ... 34
2.8 ... Feste Werte in Konstanten speichern ... 38
2.9 ... Konstanten in Enumerationen zusammenfassen ... 39
2.10 ... Übung ... 40
3. Mehrere Zweige in einem Programm ... 41
3.1 ... Zwei Zweige mit »if« und »else« ... 41
3.2 ... Bedingungen benötigen Vergleiche ... 43
3.3 ... Mehr als zwei Zweige ... 45
3.4 ... Wie kann ich Bedingungen kombinieren? ... 47
3.5 ... Zweige zusammenfassen mit »switch« und »case« ... 48
3.6 ... Was ist mit dem Rest? ... 50
3.7 ... Welcher Operator hat Vorrang? ... 51
3.8 ... Wie speichere ich Wahrheitswerte? ... 52
3.9 ... Die Kurzform: der bedingte Ausdruck ... 54
3.10 ... Übungen ... 55
4. Teile von Programmen wiederholen ... 57
4.1 ... Regelmäßige Wiederholungen mit »for« ... 57
4.2 ... Wiederholungen für einen Bereich ... 59
4.3 ... Bedingte Wiederholungen mit »do-while« ... 61
4.4 ... Besser vorher prüfen mit »while« ... 62
4.5 ... Wiederholungen abbrechen oder fortsetzen ... 63
4.6 ... Die Wiederholung der Wiederholung ... 64
4.7 ... Übungen ... 66
5. Programme aufteilen in Funktionen ... 69
5.1 ... So schreibe ich eine eigene Funktion ... 69
5.2 ... Wie übergebe ich Daten? ... 71
5.3 ... Ein weiterer Zugriff über eine Referenz ... 73
5.4 ... Übergabe an eine Referenz ... 74
5.5 ... Übergabe an eine konstante Referenz ... 76
5.6 ... Wie erhalte ich ein Ergebnis zurück? ... 77
5.7 ... Mehr Ordnung im Programm ... 78
5.8 ... Statische Variablen behalten ihren Wert ... 80
5.9 ... Fehler suchen ... 81
5.10 ... Standardwerte vorgeben ... 82
5.11 ... Beliebig viele Parameter ... 83
5.12 ... Funktionen mehrfach definieren ... 85
5.13 ... Funktionen, die sich selbst aufrufen ... 87
5.14 ... Funktionen als Parameter ... 88
5.15 ... Übung ... 91
6. Große Datenmengen speichern in Feldern ... 93
6.1 ... Wie werden Felder unterschieden? ... 93
6.2 ... Einfache Felder mit fester Größe ... 94
6.3 ... Intelligente Felder mit fester Größe ... 95
6.4 ... Ausnahmen behandeln ... 97
6.5 ... Einfache Zeiger ... 99
6.6 ... Die Operatoren »new« und »delete« ... 101
6.7 ... Ein intelligenter und eindeutiger Zeiger ... 102
6.8 ... Weitere intelligente Zeiger ... 104
6.9 ... Intelligente Felder mit variabler Größe ... 105
6.10 ... Felder als Parameter ... 107
6.11 ... Daten in mehreren Dimensionen speichern ... 108
6.12 ... Übungen ... 113
7. Arbeiten mit Zeichen und Texten ... 115
7.1 ... Einzelne Zeichen ... 115
7.2 ... Einfache Zeichenketten ... 116
7.3 ... Intelligente Zeichenketten: Strings ... 119
7.4 ... Wie wandle ich Zahlen in Strings um? ... 124
7.5 ... Wie verarbeite ich Eingaben? ... 126
7.6 ... Felder von Zeichenketten ... 129
7.7 ... Übung ... 131
8. Daten in Strukturen zusammenfassen ... 133
8.1 ... Wie speichere ich zusammengehörige Daten? ... 133
8.2 ... Besser einen Typ definieren ... 135
8.3 ... Strukturen und Felder ... 137
8.4 ... Strukturen und Funktionen ... 139
8.5 ... Eine Hierarchie von Strukturen ... 144
8.6 ... Übung ... 146
9. Vorhandene Funktionen nutzen ... 147
9.1 ... Umgang mit Datum und Uhrzeit ... 147
9.2 ... Wie erzeuge ich zufällige Zahlen? ... 153
9.3 ... Nützliche mathematische Funktionen ... 155
9.4 ... Rechnen mit komplexen Zahlen ... 162
9.5 ... Daten mit dem Betriebssystem austauschen ... 169
9.6 ... Zugriff auf Dateien und Verzeichnisse ... 178
10. Eigene Klassen entwerfen ... 195
10.1 ... Klassen umfassen Eigenschaften und Methoden ... 195
10.2 ... Zerlegen Sie das Programm ... 198
10.3 ... Schützen Sie die Daten ... 199
10.4 ... Wie erzeuge und lösche ich Objekte? ... 203
10.5 ... Objekte und Felder ... 207
10.6 ... Statische Elemente einer Klasse ... 209
10.7 ... Wie überlade ich Operatoren? ... 213
10.8 ... Objekte ausgeben ... 217
10.9 ... Eigenschaften können Objekte sein ... 219
10.10 ... Übung ... 221
11. Vererbung und Polymorphie ... 223
11.1 ... Basisklasse und abgeleitete Klassen ... 223
11.2 ... Welche Elemente sind an welcher Stelle erreichbar? ... 230
11.3 ... Konstruktoren in abgeleiteten Klassen ... 231
11.4 ... Was bedeutet Polymorphie? ... 235
11.5 ... Erben von mehreren Klassen ... 238
12. Datenströme verarbeiten ... 243
12.1 ... Sequenzielles Schreiben und Lesen ... 243
12.2 ... Schreiben und Lesen an beliebiger Stelle ... 250
12.3 ... Wie leiten Sie Datenströme? ... 258
12.4 ... Wie ist das CSV-Format zum Austausch aufgebaut? ... 262
13. Container sind vielfältige Datenstrukturen ... 269
13.1 ... Wie durchlaufe ich Container? ... 269
13.2 ... Intelligente Felder mit fester Größe ... 272
13.3 ... Intelligente Felder mit variabler Größe ... 275
13.4 ... Eine Warteschlange mit zwei Enden ... 279
13.5 ... Daten in Listen verketten ... 282
13.6 ... Zwei einfache Container ... 292
13.7 ... Zwei nützliche Typen ... 295
13.8 ... Eine Menge von Elementen ... 299
13.9 ... Schlüssel und Werte in einer Map ... 305
13.10 ... Algorithmen für Bereiche ... 311
13.11 ... Mengenlehre ... 313
13.12 ... Eine Menge von Bits ... 317
14. Mehr zu eigenen Klassen ... 323
14.1 ... Objekte initialisieren, kopieren und erzeugen ... 323
14.2 ... Klassen können Freunde haben ... 326
14.3 ... Namen müssen eindeutig sein ... 329
14.4 ... Fehler behandeln mit Ausnahmen ... 332
14.5 ... Innere Klassen ... 340
14.6 ... Templates sind Vorlagen ... 342
15. Präprozessor-Anweisungen ... 349
15.1 ... Einbinden von Dateien ... 349
15.2 ... Definitionen und Makros ... 350
15.3 ... Definitionen und Verzweigungen ... 352
15.4 ... Eine Systemweiche ... 354
16. Grafische Benutzeroberflächen mit der Qt-Bibliothek ... 357
16.1 ... Qt installieren ... 358
16.2 ... Das erste Qt-Projekt ... 362
16.3 ... Die erste GUI-Anwendung ... 366
16.4 ... Ein einfacher Kopfrechentrainer ... 377
16.5 ... Ein erweiterter Kopfrechentrainer ... 382
16.6 ... Weitere Widgets ... 389
17. Datenbanken mit SQLite verwalten ... 399
17.1 ... Der Aufbau einer Datenbank ... 399
17.2 ... Wie erzeuge ich Datenbank und Tabelle? ... 400
17.3 ... Wie speichere ich Daten in einer Tabelle? ... 406
17.4 ... So zeige ich alle Daten einer Tabelle an ... 407
17.5 ... Wie wähle ich bestimmte Daten aus? ... 410
17.6 ... Der Benutzer wählt Daten aus ... 414
17.7 ... Daten sollten sortiert werden ... 415
17.8 ... Wie ändere ich Daten? ... 416
17.9 ... Vorsicht beim Löschen von Daten ... 418
17.10 ... Eine Datenbank mit mehreren Tabellen ... 419
17.11 ... Projekt Vokabeln ... 426
17.12 ... Übung ... 447
A. Installationen ... 451
A.1 ... Installationen unter Windows ... 451
A.2 ... Installationen unter Ubuntu Linux ... 462
A.3 ... Installationen unter macOS ... 465
A.4 ... Beispiele für C++14 ... 468
A.5 ... Installation für C++17 ... 472
B. Tipps und Musterlösungen ... 475
B.1 ... Windows -- einige Tastenkombinationen ... 475
B.2 ... Unix-Befehle ... 475
B.3 ... Lösungen der Übungen ... 479
Index ... 501