Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Liebe Leser!
Inhaltsverzeichnis
1 Eine erste Einführung
1.1 Was machen wir mit C++?
1.2 Was benötige ich zum Programmieren?
1.3 Die Entwicklung von C++
1.4 So sieht das erste Programm aus
1.5 Kommentieren Sie Ihre Programme
2 Arbeiten mit Zahlen und Operatoren
2.1 Wie speichere ich Zahlen?
2.2 Rechnen mit Operatoren
2.3 Fehler suchen
2.4 Wie können Daten eingegeben werden?
2.5 Zahlen formatieren mit Manipulatoren
2.6 Zuweisungen kürzer schreiben
2.7 Mehr über die Speicherung von Zahlen
2.7.1 Ganzzahlige Datentypen
2.7.2 Datentypen für Fließkommazahlen
2.8 Feste Werte in Konstanten speichern
2.9 Konstanten in Enumerationen zusammenfassen
2.10 Übung
3 Mehrere Zweige in einem Programm
3.1 Zwei Zweige mit »if« und »else«
3.2 Bedingungen benötigen Vergleiche
3.3 Mehr als zwei Zweige
3.4 Wie kann ich Bedingungen kombinieren?
3.5 Zweige zusammenfassen mit »switch« und »case«
3.6 Was ist mit dem Rest?
3.7 Welcher Operator hat Vorrang?
3.8 Wie speichere ich Wahrheitswerte?
3.9 Die Kurzform: der bedingte Ausdruck
3.10 Übungen
4 Teile von Programmen wiederholen
4.1 Regelmäßige Wiederholungen mit »for«
4.2 Wiederholungen für einen Bereich
4.3 Bedingte Wiederholungen mit »do-while«
4.4 Besser vorher prüfen mit »while«
4.5 Wiederholungen abbrechen oder fortsetzen
4.6 Die Wiederholung der Wiederholung
4.7 Übungen
5 Programme aufteilen in Funktionen
5.1 So schreibe ich eine eigene Funktion
5.2 Wie übergebe ich Daten?
5.3 Ein weiterer Zugriff über eine Referenz
5.4 Übergabe an eine Referenz
5.5 Übergabe an eine konstante Referenz
5.6 Wie erhalte ich ein Ergebnis zurück?
5.7 Mehr Ordnung im Programm
5.8 Statische Variablen behalten ihren Wert
5.9 Fehler suchen
5.10 Standardwerte vorgeben
5.11 Beliebig viele Parameter
5.12 Funktionen mehrfach definieren
5.13 Funktionen, die sich selbst aufrufen
5.14 Funktionen als Parameter
5.15 Übung
6 Große Datenmengen speichern in Feldern
6.1 Wie werden Felder unterschieden?
6.2 Einfache Felder mit fester Größe
6.3 Intelligente Felder mit fester Größe
6.4 Ausnahmen behandeln
6.5 Einfache Zeiger
6.6 Die Operatoren »new« und »delete«
6.7 Ein intelligenter und eindeutiger Zeiger
6.8 Weitere intelligente Zeiger
6.9 Intelligente Felder mit variabler Größe
6.10 Felder als Parameter
6.11 Daten in mehreren Dimensionen speichern
6.11.1 Ein zweidimensionales Feld mit fester Größe
6.11.2 Ein zweidimensionales Feld mit variabler Größe
6.12 Übungen
7 Arbeiten mit Zeichen und Texten
7.1 Einzelne Zeichen
7.2 Einfache Zeichenketten
7.3 Intelligente Zeichenketten: Strings
7.3.1 Strings erzeugen
7.3.2 Strings ändern
7.3.3 Strings vergleichen und durchsuchen
7.4 Wie wandle ich Zahlen in Strings um?
7.5 Wie verarbeite ich Eingaben?
7.6 Felder von Zeichenketten
7.7 Übung
8 Daten in Strukturen zusammenfassen
8.1 Wie speichere ich zusammengehörige Daten?
8.2 Besser einen Typ definieren
8.3 Strukturen und Felder
8.4 Strukturen und Funktionen
8.4.1 Das Hauptprogramm
8.4.2 Die Größe des Felds festlegen
8.4.3 Die Eingabefunktionen
8.4.4 Die Ausgabefunktionen
8.5 Eine Hierarchie von Strukturen
8.6 Übung
9 Vorhandene Funktionen nutzen
9.1 Umgang mit Datum und Uhrzeit
9.1.1 Datum und Uhrzeit ausgeben
9.1.2 Zeit messen
9.1.3 Zeitangaben erzeugen und berechnen
9.2 Wie erzeuge ich zufällige Zahlen?
9.3 Nützliche mathematische Funktionen
9.3.1 Winkelfunktionen
9.3.2 Funktionen zum Runden
9.3.3 Verschiedene mathematische Funktionen
9.3.4 Prüffunktionen
9.3.5 Betrag und Vergleich
9.4 Rechnen mit komplexen Zahlen
9.4.1 Konstruktoren
9.4.2 Spezielle Funktionen
9.4.3 Operatoren
9.4.4 Mathematische Funktionen
9.5 Daten mit dem Betriebssystem austauschen
9.5.1 Wie lauten die Parameter?
9.5.2 Berechnung der Summe der Parameter
9.5.3 Wie nutze ich die Rückgabe eines Programms?
9.5.4 Systemkommandos ausführen
9.5.5 Ausgabe umlenken
9.5.6 Eingabe umlenken
9.6 Zugriff auf Dateien und Verzeichnisse
9.6.1 Attribute von Dateien und Verzeichnissen
9.6.2 Zugriffsrechte ändern
9.6.3 Inhalt eines Verzeichnisses
9.6.4 Inhalt eines Verzeichnisbaums
9.6.5 Dateien ändern
9.6.6 Verzeichnisse ändern
10 Eigene Klassen entwerfen
10.1 Klassen umfassen Eigenschaften und Methoden
10.1.1 Die Definition der Klasse
10.1.2 Objekte als Instanzen einer Klasse
10.2 Zerlegen Sie das Programm
10.3 Schützen Sie die Daten
10.4 Wie erzeuge und lösche ich Objekte?
10.5 Objekte und Felder
10.6 Statische Elemente einer Klasse
10.7 Wie überlade ich Operatoren?
10.8 Objekte ausgeben
10.9 Eigenschaften können Objekte sein
10.10 Übung
11 Vererbung und Polymorphie
11.1 Basisklasse und abgeleitete Klassen
11.2 Welche Elemente sind an welcher Stelle erreichbar?
11.3 Konstruktoren in abgeleiteten Klassen
11.4 Was bedeutet Polymorphie?
11.5 Erben von mehreren Klassen
12 Datenströme verarbeiten
12.1 Sequenzielles Schreiben und Lesen
12.1.1 Schreiben in eine Datei
12.1.2 Pfadangaben
12.1.3 Lesen aus einer Datei
12.1.4 Mehrmals öffnen und schließen
12.2 Schreiben und Lesen an beliebiger Stelle
12.2.1 Formatiertes Schreiben in eine Datei
12.2.2 Lesen an beliebiger Stelle einer Datei
12.2.3 Schreiben an beliebiger Stelle in eine Datei
12.3 Wie leiten Sie Datenströme?
12.3.1 String-Streams auf dem Bildschirm ausgeben
12.3.2 String-Streams von Tastatur lesen
12.4 Wie ist das CSV-Format zum Austausch aufgebaut?
12.4.1 Im CSV-Format in eine Datei schreiben
12.4.2 Eine Datei im CSV-Format lesen
13 Container sind vielfältige Datenstrukturen
13.1 Wie durchlaufe ich Container?
13.2 Intelligente Felder mit fester Größe
13.3 Intelligente Felder mit variabler Größe
13.4 Eine Warteschlange mit zwei Enden
13.5 Daten in Listen verketten
13.5.1 Einfach verkettete Listen
13.5.2 Doppelt verkettete Listen
13.6 Zwei einfache Container
13.6.1 Last In First Out (LIFO)
13.6.2 First In First Out (FIFO)
13.7 Zwei nützliche Typen
13.7.1 Paare
13.7.2 Tupel
13.8 Eine Menge von Elementen
13.8.1 Sortiert und einzigartig
13.8.2 Sortiert und nicht einzigartig
13.8.3 Nicht sortiert und einzigartig
13.8.4 Nicht sortiert und nicht einzigartig
13.9 Schlüssel und Werte in einer Map
13.9.1 Sortiert und einzigartig
13.9.2 Nicht sortiert und einzigartig
13.9.3 Sortiert und nicht einzigartig
13.9.4 Nicht sortiert und nicht einzigartig
13.10 Algorithmen für Bereiche
13.11 Mengenlehre
13.12 Eine Menge von Bits
13.12.1 Funktionen für Bitsets
13.12.2 Operatoren für Bitsets
14 Mehr zu eigenen Klassen
14.1 Objekte initialisieren, kopieren und erzeugen
14.2 Klassen können Freunde haben
14.2.1 Befreundete Funktionen
14.2.2 Befreundete Klassen
14.3 Namen müssen eindeutig sein
14.4 Fehler behandeln mit Ausnahmen
14.4.1 Ausnahmen in Schleifen
14.4.2 Eigene Ausnahmen werfen
14.4.3 Ausnahme in Funktion behandeln
14.4.4 Eigene Ausnahmeklasse definieren
14.5 Innere Klassen
14.6 Templates sind Vorlagen
14.6.1 Templates für Funktionen
14.6.2 Templates für Klassen
15 Präprozessor-Anweisungen
15.1 Einbinden von Dateien
15.2 Definitionen und Makros
15.3 Definitionen und Verzweigungen
15.4 Eine Systemweiche
16 Grafische Benutzeroberflächen mit der Qt-Bibliothek
16.1 Qt installieren
16.1.1 Qt für Windows
16.1.2 Qt für Ubuntu Linux
16.1.3 Qt für macOS
16.2 Das erste Qt-Projekt
16.2.1 Ein neues Projekt anlegen
16.2.2 Projekt und Verzeichnis benennen
16.2.3 Kit auswählen
16.2.4 Die Fenster der Entwicklungsumgebung
16.2.5 Die Anwendung ausführen
16.2.6 Projekt schließen und öffnen
16.3 Die erste GUI-Anwendung
16.3.1 Klasse und Dateien
16.3.2 Projekt- und Codefenster
16.3.3 »Design«-Ansicht
16.3.4 Projekt ausführen
16.3.5 Ein Label einfügen und gestalten
16.3.6 Weitere Widgets einfügen und gestalten
16.3.7 Code und Verbindung erstellen
16.3.8 Registerkarte »Signals und Slots«
16.4 Ein einfacher Kopfrechentrainer
16.4.1 Die Erstellung der GUI
16.4.2 Die Deklaration der Klasse
16.4.3 Die Definition ohne Prüfung
16.4.4 Die Definition mit Prüfung
16.5 Ein erweiterter Kopfrechentrainer
16.5.1 Ein Projekt kopieren
16.5.2 Die Erweiterung der GUI
16.5.3 Die Erweiterung der Deklaration
16.5.4 Die Erweiterung des Konstruktors
16.5.5 Die Erweiterung des Prüfvorgangs
16.5.6 Die Erweiterung der Aufgabenstellung
16.6 Weitere Widgets
16.6.1 Beschreibung der Widgets
16.6.2 Die Erstellung der GUI
16.6.3 Die Deklaration der Klasse
16.6.4 Der Konstruktor der Klasse
16.6.5 Die Ereignismethoden der Klasse
17 Datenbanken mit SQLite verwalten
17.1 Der Aufbau einer Datenbank
17.2 Wie erzeuge ich Datenbank und Tabelle?
17.2.1 Die Erstellung der GUI
17.2.2 Die Deklaration der Klasse
17.2.3 Konstruktor und Destruktor der Klasse
17.2.4 Die Ereignismethode der Klasse
17.3 Wie speichere ich Daten in einer Tabelle?
17.4 So zeige ich alle Daten einer Tabelle an
17.5 Wie wähle ich bestimmte Daten aus?
17.5.1 Vergleichsoperatoren
17.5.2 Logische Operatoren
17.5.3 Vergleichsoperator »LIKE«
17.6 Der Benutzer wählt Daten aus
17.7 Daten sollten sortiert werden
17.8 Wie ändere ich Daten?
17.9 Vorsicht beim Löschen von Daten
17.10 Eine Datenbank mit mehreren Tabellen
17.10.1 Inhalt der Datenbank
17.10.2 Das Datenbankmodell
17.10.3 Der Aufbau des Qt-Projekts
17.10.4 Das Erstellen und Füllen der Tabellen
17.10.5 Abfragen über einzelne Tabellen
17.10.6 Abfragen über zwei verbundene Tabellen
17.10.7 Abfragen über drei verbundene Tabellen
17.10.8 Gruppieren und Summieren
17.11 Projekt Vokabeln
17.11.1 Die Benutzung des Programms
17.11.2 Der Aufbau des Qt-Projekts
17.11.3 Die Deklaration der Klasse
17.11.4 Der Konstruktor der Klasse
17.11.5 Das Aktivieren und Deaktivieren von Widgets
17.11.6 Die Auswahl der Sprachkombination
17.11.7 Der Vokabeltest wird gestartet
17.11.8 Die Übersetzung wird geprüft
17.11.9 Der Vokabeltest wird vorzeitig beendet
17.11.10 Die Neueingabe von Vokabeln wird gestartet
17.11.11 Die List Widgets werden parallel markiert
17.11.12 Eine neue Vokabel wird gespeichert
17.11.13 Eine Vokabel wird gelöscht
17.11.14 Die Neueingabe von Vokabeln wird beendet
17.11.15 Mögliche Erweiterungen des Programms
17.12 Übung
17.12.1 Benutzeroberfläche
17.12.2 Bedienung
17.12.3 Zugriff auf Date Edit Widget
17.12.4 Eintrag im List Widget aufsplitten
A Installationen
A.1 Installationen unter Windows
A.1.1 Orwell Dev-C++ installieren
A.1.2 Orwell Dev-C++ nutzen
A.1.3 Eclipse installieren
A.1.4 Eclipse nutzen
A.1.5 NetBeans installieren
A.1.6 NetBeans nutzen
A.1.7 MinGW installieren
A.1.8 MinGW im Systempfad eintragen
A.1.9 MinGW nutzen
A.1.10 Binden eines Programms
A.2 Installationen unter Ubuntu Linux
A.2.1 Arbeiten im Terminal
A.2.2 Eclipse installieren
A.2.3 NetBeans installieren
A.3 Installationen unter macOS
A.3.1 Xcode
A.3.2 Arbeiten im Terminal
A.3.3 Eclipse installieren
A.3.4 NetBeans installieren
A.4 Beispiele für C++14
A.4.1 Spezifizierer »auto« bei Funktionen
A.4.2 Spezifizierer »decltype«
A.4.3 Komponenten eines Tupels
A.4.4 Funktionstemplate »make_unique«
A.5 Installation für C++17
A.5.1 MinGW mit GCC 7.1 installieren
A.5.2 Eine Funktion aus C++17
B Tipps und Musterlösungen
B.1 Windows – einige Tastenkombinationen
B.2 Unix-Befehle
B.2.1 Inhalt eines Verzeichnisses
B.2.2 Verzeichnis anlegen, wechseln und löschen
B.2.3 Datei kopieren, verschieben und löschen
B.2.4 Schlüsselwörter der Sprache C++
B.3 Lösungen der Übungen
B.3.1 Übung zu Kapitel 2
B.3.2 Übungen zu Kapitel 3
B.3.3 Übungen zu Kapitel 4
B.3.4 Übung zu Kapitel 5
B.3.5 Übungen zu Kapitel 6
B.3.6 Übung zu Kapitel 7
B.3.7 Übung zu Kapitel 8
B.3.8 Übung zu Kapitel 10
Stichwortverzeichnis
Rechtliche Hinweise
Über den Autor
← Prev
Back
Next →
← Prev
Back
Next →