Thomas Theis

Einstieg in C++

Ideal für Programmiereinsteiger, inkl. Einführung in die objektorientierte Programmierung mit C++ und Übungsaufgaben. 2. Auflage. 23,1 cm / 17,3 cm / 3,2 cm ( B/H/T )
Buch (Softcover), 547 Seiten
EAN 9783836278638
Veröffentlicht Juli 2020
Verlag/Hersteller Rheinwerk Verlag GmbH

Auch erhältlich als:

eBook (epub)
24,90
24,90 inkl. MwSt.
Teilen
Beschreibung

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 Pointer Objektorientierte Programmierung Vererbung und Polymorphie Moderne Bibliotheken: chrono, random, thread, filesystem Arbeiten mit Containern GUI-Entwicklung mit Qt Datenbanken mit SQLite verwalten
Die Fachpresse zur Vorauflage:
iX - Magazin für professionelle Informationstechnik: »Wer C++ lernen will oder eine Auffrischung auf C++11 benötigt, dürfte Gefallen an dem knapp 520 Seiten starken Lehrbuch finden.«

Portrait

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.

Inhaltsverzeichnis


Materialien zum Buch ... 17
1. Eine erste Einführung ... 19
1.1 ... Was machen wir mit C++? ... 19
1.2 ... Was benötige ich zum Programmieren? ... 20
1.3 ... Die Entwicklung von C++ ... 20
1.4 ... So sieht das erste Programm aus ... 21
1.5 ... Kommentieren Sie Ihre Programme ... 22
2. Arbeiten mit Zahlen und Operatoren ... 25
2.1 ... Wie speichere ich Zahlen? ... 25
2.2 ... Rechnen mit Operatoren ... 27
2.3 ... Fehler suchen ... 29
2.4 ... Wie können Daten eingegeben werden? ... 31
2.5 ... Zahlen formatieren mit Manipulatoren ... 33
2.6 ... Zuweisungen kürzer schreiben ... 34
2.7 ... Übung ... 36
2.8 ... Mehr über die Speicherung von Zahlen ... 37
2.9 ... Feste Werte in Konstanten speichern ... 41
2.10 ... Konstanten in Enumerationen zusammenfassen ... 42
2.11 ... Zahlensysteme ... 43
2.12 ... Initialisierung ... 45
2.13 ... Wie erzeuge ich zufällige Zahlen? ... 47
2.14 ... Übung ... 48
3. Mehrere Zweige in einem Programm ... 49
3.1 ... Zwei Zweige mit 'if' und 'else' ... 49
3.2 ... Bedingungen benötigen Vergleiche ... 51
3.3 ... Mehr als zwei Zweige ... 53
3.4 ... Wie kann ich Bedingungen kombinieren? ... 55
3.5 ... Zweige zusammenfassen mit 'switch' und 'case' ... 57
3.6 ... Was ist mit dem Rest? ... 58
3.7 ... Welcher Operator hat Vorrang? ... 59
3.8 ... Übungen ... 60
3.9 ... Wie speichere ich Wahrheitswerte? ... 63
3.10 ... Die Kurzform: der bedingte Ausdruck ... 65
4. Teile von Programmen wiederholen ... 67
4.1 ... Regelmäßige Wiederholungen mit 'for' ... 67
4.2 ... Wiederholungen für einen Bereich ... 70
4.3 ... Bedingte Wiederholungen mit 'do-while' ... 71
4.4 ... Besser vorher prüfen mit 'while' ... 72
4.5 ... Wiederholungen abbrechen oder fortsetzen ... 73
4.6 ... Die Wiederholung der Wiederholung ... 75
4.7 ... Übungen ... 76
5. Programme aufteilen in Funktionen ... 79
5.1 ... So schreibe ich eine eigene Funktion ... 79
5.2 ... Wie übergebe ich Daten? ... 81
5.3 ... Wie erhalte ich ein Ergebnis zurück? ... 87
5.4 ... Mehr Ordnung im Programm ... 88
5.5 ... Statische Variablen behalten ihren Wert ... 90
5.6 ... Fehler suchen ... 91
5.7 ... Übungen ... 92
5.8 ... Standardwerte vorgeben ... 93
5.9 ... Beliebig viele Parameter ... 94
5.10 ... Funktionen mehrfach definieren ... 96
5.11 ... Funktionen, die sich selbst aufrufen ... 98
5.12 ... Anonyme Funktionen ... 99
5.13 ... Funktionen als Parameter ... 105
6. Große Datenmengen speichern in Feldern ... 109
6.1 ... Wie werden Felder unterschieden? ... 109
6.2 ... Einfache Felder mit fester Größe ... 110
6.3 ... Intelligente Felder mit fester Größe ... 111
6.4 ... Ausnahmen behandeln ... 113
6.5 ... Einfache und intelligente Zeiger ... 115
6.6 ... Intelligente Felder mit variabler Größe ... 122
6.7 ... Felder initialisieren ... 124
6.8 ... Felder als Parameter ... 125
6.9 ... Daten in mehreren Dimensionen speichern ... 127
6.10 ... Übungen ... 131
7. Arbeiten mit Zeichen und Texten ... 133
7.1 ... Einzelne Zeichen ... 133
7.2 ... Einfache Zeichenketten ... 134
7.3 ... Intelligente Zeichenketten: Strings ... 137
7.4 ... Wie wandle ich Zahlen in Strings um? ... 143
7.5 ... Wie verarbeite ich Eingaben? ... 144
7.6 ... Felder von Zeichenketten ... 147
7.7 ... Suchen und Ersetzen ... 149
7.8 ... Übungen ... 154
8. Daten in Strukturen zusammenfassen ... 157
8.1 ... Wie speichere ich zusammengehörige Daten? ... 157
8.2 ... Besser einen Typ definieren ... 159
8.3 ... Strukturen und Felder ... 161
8.4 ... Strukturen und Funktionen ... 165
8.5 ... Eine Hierarchie von Strukturen ... 170
8.6 ... Übung ... 172
9. Vorhandene Funktionen nutzen ... 175
9.1 ... Umgang mit Datum und Uhrzeit ... 175
9.2 ... Bessere zufällige Zahlen ... 181
9.3 ... Mehrere Threads zur gleichen Zeit ... 184
9.4 ... Nützliche mathematische Funktionen ... 193
9.5 ... Übungen ... 202
9.6 ... Rechnen mit komplexen Zahlen ... 203
9.7 ... Daten mit dem Betriebssystem austauschen ... 210
9.8 ... Zugriff auf Dateien und Verzeichnisse ... 219
10. Eigene Klassen entwerfen ... 237
10.1 ... Klassen umfassen Eigenschaften und Methoden ... 237
10.2 ... Schützen Sie die Daten ... 240
10.3 ... Wie erzeuge und lösche ich Objekte? ... 244
10.4 ... Statische Elemente einer Klasse ... 248
10.5 ... Wie überlade ich Operatoren? ... 252
10.6 ... Objekte und Felder ... 256
10.7 ... Objekte ausgeben ... 260
10.8 ... Eigenschaften können Objekte sein ... 262
10.9 ... Übungen ... 264
11. Vererbung und Polymorphie ... 269
11.1 ... Basisklasse und abgeleitete Klassen ... 269
11.2 ... Welche Elemente sind an welcher Stelle erreichbar? ... 276
11.3 ... Konstruktoren in abgeleiteten Klassen ... 277
11.4 ... Was bedeutet Polymorphie? ... 281
11.5 ... Erben von mehreren Klassen ... 284
12. Datenströme verarbeiten ... 289
12.1 ... Sequenzielles Schreiben und Lesen ... 289
12.2 ... Schreiben und Lesen an beliebiger Stelle ... 296
12.3 ... Wie leiten Sie Datenströme? ... 305
12.4 ... Wie ist das CSV-Format zum Austausch aufgebaut? ... 308
12.5 ... Übung ... 315
13. Container sind vielfältige Datenstrukturen ... 319
13.1 ... Wie durchlaufe ich Container? ... 320
13.2 ... Intelligente Felder mit fester Größe ... 322
13.3 ... Intelligente Felder mit variabler Größe ... 326
13.4 ... Eine Warteschlange mit zwei Enden ... 330
13.5 ... Daten in Listen verketten ... 334
13.6 ... Drei einfache Container ... 344
13.7 ... Zwei nützliche Typen ... 351
13.8 ... Eine Menge von Elementen ... 355
13.9 ... Schlüssel und Werte in einer Map ... 362
13.10 ... Algorithmen für Bereiche ... 369
13.11 ... Mengenlehre ... 374
13.12 ... Eine Menge von Bits ... 378
14. Mehr zu eigenen Klassen ... 383
14.1 ... Objekte initialisieren, kopieren und erzeugen ... 383
14.2 ... Klassen können Freunde haben ... 386
14.3 ... Namen müssen eindeutig sein ... 389
14.4 ... Fehler behandeln mit Ausnahmen ... 392
14.5 ... Innere Klassen ... 400
14.6 ... Templates sind Vorlagen ... 402
15. Präprozessor-Anweisungen ... 409
15.1 ... Einbinden von Dateien ... 409
15.2 ... Definitionen und Makros ... 410
15.3 ... Definitionen und Verzweigungen ... 412
15.4 ... Eine Systemweiche ... 414
16. Grafische Benutzeroberflächen mit der Qt-Bibliothek ... 417
16.1 ... Die erste GUI-Anwendung ... 418
16.2 ... Ein einfacher Kopfrechentrainer ... 429
16.3 ... Ein erweiterter Kopfrechentrainer ... 434
16.4 ... Weitere Widgets ... 441
17. Datenbanken mit SQLite verwalten ... 449
17.1 ... Der Aufbau einer Datenbank ... 449
17.2 ... Wie erzeuge ich Datenbank und Tabelle? ... 450
17.3 ... Wie speichere ich Daten in einer Tabelle? ... 455
17.4 ... So zeige ich alle Daten einer Tabelle an ... 457
17.5 ... Wie wähle ich bestimmte Daten aus? ... 460
17.6 ... Der Benutzer wählt Daten aus ... 464
17.7 ... Daten sollten sortiert werden ... 465
17.8 ... Wie ändere ich Daten? ... 466
17.9 ... Vorsicht beim Löschen von Daten ... 468
17.10 ... Eine Datenbank mit mehreren Tabellen ... 469
17.11 ... Projekt Vokabeln ... 476
17.12 ... Übung ... 497
Anhang ... 501
A ... Installationen ... 501
B ... Hilfestellungen und Übersichten ... 525
Index ... 531

Hersteller
Rheinwerk Verlag GmbH
Rheinwerkallee 4

DE - 53227 Bonn

E-Mail: service@rheinwerk-verlag.de

Das könnte Sie auch interessieren

Lieferbar innerhalb von 3 Wochen
18,00
Lieferbar innerhalb von 1-2 Wochen
8,50
Frank-Michael Becker
Formelsammlung bis zum Abitur - Mathematik ...
Buch (Softcover)
Sofort lieferbar
16,99
Asma Mhalla
Cyberpunk
Buch (Softcover)
Sofort lieferbar
16,00
Marc-Uwe Kling
Der Tag, an dem die Oma das Internet kaputt...
Buch (Hardcover)
Sofort lieferbar
12,00
Sofort lieferbar
4,95
Sofort lieferbar
19,90
Roberto Simanowski
Sprachmaschinen
Buch (Softcover)
Sofort lieferbar
23,00
Kim Beck
Basiskurs Medienbildung.Gesamtkurs
Buch (Softcover)
Sofort lieferbar
9,00
Sarah Wynn-Williams
Mein Traumjob bei Facebook und wie ich alle...
Buch (Softcover)
Sofort lieferbar
20,00
Sofort lieferbar
9,95
Lieferbar innerhalb von 1-2 Wochen
4,75
Katharina Zweig
Weiß die KI, dass sie nichts weiß?
Buch (Softcover)
Lieferbar innerhalb von 1-2 Wochen
20,00
Ursula Poznanski
Erebos 2
Buch (Hardcover)
Sofort lieferbar
19,95
Nicholas Potter
Die neue autoritäre Linke
Buch (Softcover)
Sofort lieferbar
20,00
Lieferbar innerhalb von 3-4 Wochen
23,50
Sofort lieferbar
4,75
Andreas Erle
Das kann KI
Buch (Softcover)
Lieferbar innerhalb von 1-2 Wochen
19,90
Sofort lieferbar
9,95
Rainer Hattenhauer
KI für Senioren
Buch (Softcover)
Sofort lieferbar
19,90
Henning Körner
Formelfinder Mathematik / Informatik / Phy...
Buch (Hardcover)
Sofort lieferbar
14,95
Sabrina Sue Daniels
Die drei !!! Koch dich um die Welt
Buch (Hardcover)
Sofort lieferbar
20,00
Judith Le Huray
Vernetzt gehetzt. Schulausgabe
Buch (Softcover)
Sofort lieferbar
6,95
Aldous Huxley
Zeit der Oligarchen
Buch (Hardcover)
Sofort lieferbar
14,00
Joachim Bauer
Menschlichkeit in digitalen Zeiten
Buch (Hardcover)
Sofort lieferbar
24,00
Martin Andree
Vermessung der digitalen Welt
Buch (Softcover)
Sofort lieferbar
25,00
Robert Klaßen
Windows 11
Buch (Softcover)
Sofort lieferbar
12,90
Thomas Hillers
Die Social-Media-Sprechstunde. Was unsere K...
Buch (Softcover)
Lieferbar innerhalb von 3 Wochen
18,00
Aya Jaff
Broligarchie
Buch (Hardcover)
Sofort lieferbar
23,99
Eric Jorgenson
Der Almanach von Elon Musk
Buch (Hardcover)
Sofort lieferbar
18,00
Cory Doctorow
Enshittification
Buch (Hardcover)
Sofort lieferbar
24,00
Gisela Schmalz
Fetisch Intelligenz
Buch (Hardcover)
Lieferbar innerhalb von 1-2 Wochen
24,00
Nina Kolleck
Der Kampf in den Köpfen
Buch (Hardcover)
Sofort lieferbar
24,00
Sofort lieferbar
32,50
Sofort lieferbar
24,95
Sofort lieferbar
34,50