Fr. 32.90

Einstieg in C++ - Ideal für Programmiereinsteiger, inkl. Einführung in die objektorientierte Programmierung mit C++ und Übungsaufgaben

German · Paperback / Softback

Shipping usually within 4 to 7 working days

Description

Read more

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.«

List of contents



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

About the author

Thomas Theis ist Dipl.-Ing. für Technische Informatik. Als Softwareentwickler verfügt er über langjährige Erfahrung, ebenso als IT-Dozent unter anderem an der Fachhochschule Aachen. Er ist Autor vieler erfolgreicher Fachbücher, zum Beispiel zu den Themen Python, C#, PHP, JavaScript, C++ und Unity.

Summary

Der leichte Einstieg in die C++-ProgrammierungSteigen Sie ein in die C++-Entwicklung. Sie lernen die Sprachgrundlagen und alle wichtigen Themen wie Vererbung, Objektorientierung, Polymorphie, GUI-Entwicklung und Datenbanken. Anschauliche Erklärungen, praxisnahe Beispiele und Übungen begleiten Sie von den ersten Schritten bis zum fertigen Programm. Kenntnisse in C oder einer anderen Sprache werden nicht vorausgesetzt.C++-Programmierung verständlich erklärtAlle Sprachgrundlagen und wichtigen ProgrammiertechnikenMit Übungsaufgaben und Musterlösungen Aus dem Inhalt:SprachgrundlagenReferenzen und PointerObjektorientierte ProgrammierungVererbung und PolymorphieModerne Bibliotheken: chrono, random, thread, filesystemArbeiten mit ContainernGUI-Entwicklung mit QtDatenbanken mit SQLite verwalten

Foreword

Ideal für Programmiereinsteiger, inkl. Einführung in die objektorientierte Programmierung mit C++ und Übungsaufgaben

Additional text

»Mit diesem Kurs lässt sich die objektorientierte Programmiersprache unter macOS, Linux und Windows schrittweise erlernen.«

Report

»Programmiersprache und -techniken werden wieder durch viele Beispiele und Übungen leicht verständlich vermittelt.« EKZ-Informationsdienst 202010

Product details

Authors Thomas Theis
Publisher Rheinwerk Verlag
 
Languages German
Product format Paperback / Softback
Released 28.07.2020
 
EAN 9783836278638
ISBN 978-3-8362-7863-8
No. of pages 547
Dimensions 175 mm x 231 mm x 32 mm
Weight 998 g
Series Rheinwerk Computing
Subjects Natural sciences, medicine, IT, technology > IT, data processing > Programming languages

Informatik, Programmierung, Software-Entwicklung, C++ 17, GUI-Entwicklung, Standardbibliothek, Objektorientierung OOP, C++ Programmieren lernen, C++ 20

Customer reviews

No reviews have been written for this item yet. Write the first review and be helpful to other users when they decide on a purchase.

Write a review

Thumbs up or thumbs down? Write your own review.

For messages to CeDe.ch please use the contact form.

The input fields marked * are obligatory

By submitting this form you agree to our data privacy statement.