Jesse Liberty
C++ in 21 Tagen : der optimale Weg - Schritt fu?r Schritt zum Programmierprofi ; Einfu?hrung in die objektorientierte Programmierung ; alle Programme getestet mit Microsoft Visual C++ und Borland C++-Builder.
3 Angebote ab € 6,50 €
Jesse Liberty
C++ in 21 Tagen : der optimale Weg - Schritt fu?r Schritt zum Programmierprofi ; Einfu?hrung in die objektorientierte Programmierung ; alle Programme getestet mit Microsoft Visual C++ und Borland C++-Builder.
- Buch
- Merkliste
- Auf die Merkliste
- Bewerten Bewerten
- Teilen
- Produkt teilen
- Produkterinnerung
- Produkterinnerung
Die deutsche Übersetzung eines der weltweit erfolgreichsten C++-Lehrbücher setzt keinerlei Vorkenntnisse voraus: Bestseller-Autor Jesse Liberty beginnt mit den fundamentalen Grundlagen und führt sowohl in die Sprache als auch die Konzepte ein, die mit der Programmierung von C++ verbunden sind. Die zu den Lektionen gehörenden Beispiellistings, die Abdrucke der Bildschirmausgaben sowie die ausführlichen Analysen des Codes illustrieren jedes Thema optimal.
Die deutsche Übersetzung eines der weltweit erfolgreichsten C++-Lehrbücher setzt keinerlei Vorkenntnisse voraus: Bestseller-Autor Jesse Liberty beginnt mit den fundamentalen Grundlagen und führt sowohl in die Sprache als auch die Konzepte ein, die mit der Programmierung von C++ verbunden sind. Die zu den Lektionen gehörenden Beispiellistings, die Abdrucke der Bildschirmausgaben sowie die ausführlichen Analysen des Codes illustrieren jedes Thema optimal.
Produktdetails
- Produktdetails
- ISBN-13: 9783827256249
- ISBN-10: 3827256240
- Artikelnr.: 25054220
- Herstellerkennzeichnung Die Herstellerinformationen sind derzeit nicht verfügbar.
- ISBN-13: 9783827256249
- ISBN-10: 3827256240
- Artikelnr.: 25054220
- Herstellerkennzeichnung Die Herstellerinformationen sind derzeit nicht verfügbar.
Was ist neu in der dritten Auflage?
Über den Autor
Einführung
An wen sich dieses Buch wendet
Konventionen Auf einen Blick
Hinweis für C-Programmierer
Aufbau der ersten Woche Tag 1 Erste Schritte
Ein kurzer geschichtlicher Abriß der Programmiersprache C++
Programme
Probleme lösen
Wie sich C++ entwickelt hat
Sollte ich zuerst C lernen?
C++ und Java
Der ANSI-Standard
Vorbereitungen
Ihre Entwicklungsumgebung
Quellcode kompilieren
Ein ausführbares Programm mit dem Linker erstellen
Der Entwicklungszyklus
HELLO.CPP - Ihr erstes C++-Programm
Die ersten Schritte mit Visual C++ 6
Fehler zur Kompilierzeit
Zusammenfassung
Fragen und Antworten
Workshop Tag 2 Die Bestandteile eines C++-Programms
Ein einfaches Programm
Eine kurze Einführung in cout
Kommentare
Funktionen
Funktionen verwenden
Zusammenfassung
Fragen und Antworten
Workshop Tag 3 Variablen und Konstanten
Was ist eine Variable?
Variablen definieren
Mehrere Variablen gleichzeitig erzeugen
Werte an Variablen zuweisen
typedef
Wann verwendet man short und wann long?
Zeichen
Konstanten
Aufzählungstypen
Zusammenfassung
Fragen und Antworten
Workshop Tag 4 Ausdrücke und Anweisungen
Anweisungen
Whitespace
Blöcke und Verbundanweisungen
Ausdrücke
Operatoren
Zusammengesetzte Operatoren
Inkrementieren und Dekrementieren
Rangfolge der Operatoren
Verschachtelte Klammern
Wahrheitswerte
Die if-Anweisung
Geschweifte Klammern in verschachtelten if-Anweisungen
Logische Operatoren
Verkürzte Prüfung
Rangfolge der Vergleichsoperatoren
Mehr über Wahr und Unwahr
Der Bedingungsoperator
Zusammenfassung
Fragen und Antworten
Workshop Tag 5 Funktionen
Was ist eine Funktion?
Rückgabewerte, Parameter und Argumente
Funktionen deklarieren und definieren
Ausführung von Funktionen
Lokale Variablen
Globale Variablen
Globale Variablen: mit Vorsicht zu genießen
Mehr zu den lokalen Variablen
Anweisungen in Funktionen
Funktionsargumente
Parameter sind lokale Variablen
Rückgabewerte
Standardparameter
Funktionen überladen
Besondere Funktionen
Arbeitsweise von Funktionen - ein Blick hinter die Kulissen
Zusammenfassung
Fragen und Antworten
Workshop Tag 6 Klassen
Neue Typen erzeugen
Klassen und Elemente
Auf Klassenelemente zugreifen
Private und Public
Klassenmethoden implementieren
Konstruktoren und Destruktoren
Konstante Elementfunktionen
Schnittstelle und Implementierung
Klassendeklarationen und Methodendefinitionen plazieren
Inline-Implementierung
Klassen als Datenelemente einer Klasse
Strukturen
Zusammenfassung
Fragen und Antworten
Workshop Tag 7 Mehr zur Programmsteuerung
Schleifenkonstruktionen
while-Schleifen
do...while-Schleifen
do...while
for-Schleifen
Summierende Schleifen
switch-Anweisungen
Zusammenfassung
Fragen und Antworten
Workshop Auf einen Blick
Aufbau der zweiten Woche Tag 8 Zeiger
Was ist ein Zeiger?
Warum man Zeiger verwendet
Stack und Heap
Speicherlücken
Objekte auf dem Heap erzeugen
Objekte löschen
Auf Datenelemente zugreifen
Datenelemente auf dem Heap
Der this-Zeiger
Vagabundierende Zeiger
Konstante Zeiger
Zeigerarithmetik
Zusammenfassung
Fragen und Antworten
Workshop Tag 9 Referenzen
Was ist eine Referenz?
Der Adreßoperator bei Referenzen
Was kann man referenzieren?
Null-Zeiger und Null-Referenzen
Funktionsargumente als Referenz übergeben
Header und Prototypen von Funktionen
Mehrere Werte zurückgeben
Übergabe als Referenz der Effizienz wegen
Wann verwendet man Referenzen und wann Zeiger?
Referenzen und Zeiger mischen
Referenzen auf nicht mehr vorhandene Objekte
Referenzen auf Objekte im Heap zurückgeben
Wem gehört der Zeiger?
Zusammenfassung
Fragen und Antworten
Workshop Tag 10 Funktionen - weiterführende Themen
Überladene Elementfunktionen
Standardwerte
Standardwerte oder überladene Funktionen?
Der Standardkonstruktor
Konstruktoren überladen
Objekte initialisieren
Der Kopierkonstruktor
Operatoren überladen
Umwandlungsoperatoren
Zusammenfassung
Fragen und Antworten
Workshop Tag 11 Vererbung
Was ist Vererbung?
Private und Protected
Konstruktoren und Destruktoren
Funktionen überschreiben
Virtuelle Methoden
Zusammenfassung
Fragen und Antworten
Workshop Tag 12 Arrays und verkettete Listen
Was ist ein Array?
Array-Elemente
Über das Ende eines Array schreiben
Fence Post Errors
Arrays initialisieren
Arrays deklarieren
Arrays von Objekten
Mehrdimensionale Arrays
Ein Wort zum Speicher
Arrays von Zeigern
Arrays auf dem Heap
Zeiger auf Arrays und Arrays von Zeigern
Zeiger und Array-Namen
Arrays im Heap löschen
char-Arrays
strcpy() und strncpy()
String-Klassen
Verkettete Listen und andere Strukturen
Fallstudie zu den verketteten Listen
Die einzelnen Komponenten
Was haben wir gelernt?
Array-Klassen
Zusammenfassung
Fragen und Antworten
Workshop Tag 13 Polymorphie
Probleme bei der einfachen Vererbung
Mehrfachvererbung
Abstrakte Datentypen (ADTs)
Das Überwachungsmuster
Zusammenfassung
Fragen und Antworten
Workshop Tag 14 Spezielle Themen zu Klassen und Funktionen
Statische Datenelemente
Statische Elementfunktionen
Zeiger auf Funktionen
Zeiger auf Elementfunktionen
Zusammenfassung
Fragen und Antworten
Workshop Auf einen Blick
Aufbau der dritten Woche Tag 15 Vererbung - weiterführende Themen
Einbettung (Containment)
Vererbung, Einbettung und Delegierung
Delegierung
Private Vererbung
Friend-Klassen
Friend-Funktionen
Friend-Funktionen und das Überladen von Operatoren
Überladung des Ausgabe-Operators
Zusammenfassung
Fragen und Antworten
Workshop Tag 16 Streams
Streams - ein Überblick
Streams und Puffer
Standard-E/A-Objekte
Umleitung
Eingabe mit cin
Weitere Elementfunktionen von cin
Ausgabe mit cout
Verwandte Funktionen
Manipulatoren, Flags und Formatierungsanweisungen
Streams und die Funktion printf()
Eingabe und Ausgabe für Dateien
ofstream
Binärdateien und Textdateien
Befehlszeilenverarbeitung
Zusammenfassung
Fragen und Antworten
Workshop Tag 17 Namensbereiche
Zum Einstieg
Funktionen und Klassen werden über den Namen aufgelöst
Namensbereiche einrichten
Namensbereiche einsetzen
Das Schlüsselwort using
Aliase für Namensbereich
Der unbenannte Namensbereich
Der Standardnamensbereich std
Zusammenfassung
Fragen und Antworten
Workshop Tag 18 Objektorientierte Analyse und objektorientiertes Design
Ist C++ objektorientiert?
Modelle erstellen
Software-Design: Die Modelliersprache
Software-Design: die Vorgehensweise
Konzeptionierung
Analyse der Anforderungen
Design
Zusammenfassung
Fragen und Antworten
Workshop Tag 19 Templates
Was sind Templates?
Parametrisierte Typen
Definition von Templates
Template-Funktionen
Templates und Friends
Template-Elemente
Die Standard Template Library
Container
Sequentielle Container
Stacks
Queues
Assoziative Container
Algorithmenklassen
Zusammenfassung
Fragen und Antworten
Workshop Tag 20 Exceptions und Fehlerbehandlung
Bugs, Fehler, Irrtümer und Code Rot
Exceptions
try-Blöcke und catch-Blöcke einsetzen
Datenelemente in Exceptions und Benennung von Exception-Objekten
Exceptions und Templates
Exceptions ohne Fehler
Fehler und Fehlersuche mit dem Debugger
Zusammenfassung
Fragen und Antworten
Workshop Tag 21 So geht's weiter
Präprozessor und Compiler
Das Zwischenformat ansehen
Die Anweisung #define
Schutz vor Mehrfachdeklarationen
Makrofunktionen
Inline-Funktionen
String-Manipulation
Vordefinierte Makros
assert
Bitmanipulation
Stil
Wie geht es weiter?
Zusammenfassung
Fragen und Antworten
Workshop Anhang A Operatorvorrang
Anhang B C++-Schlüsselwörter
Anhang C Binäres und hexadezimales Zahlensystem
Andere Basen
Betrachtungen zu den Basen der Zahlensysteme
Das Binärsystem
Hexadezimalsystem Anhang D Anworten und Lösungen
Tag 1
Tag 2
Tag 3
Tag 4
Tag 5
Tag 6
Tag 7
Tag 8
Tag 9
Tag 10
Tag 11
Tag 12
Tag 13
Tag 14
Tag 15
Tag 16
Tag 17
Tag 18
Tag 19
Tag 20
Tag 21 Anhang E Die CD zum Buch
Stichwortverzeichnis
© Markt&Technik Verlag , ein Imprint der Pearson Education Deutschland GmbH
HTML-Erstellung: Reemers EDV-Satz , Krefeld
Über den Autor
Einführung
An wen sich dieses Buch wendet
Konventionen Auf einen Blick
Hinweis für C-Programmierer
Aufbau der ersten Woche Tag 1 Erste Schritte
Ein kurzer geschichtlicher Abriß der Programmiersprache C++
Programme
Probleme lösen
Wie sich C++ entwickelt hat
Sollte ich zuerst C lernen?
C++ und Java
Der ANSI-Standard
Vorbereitungen
Ihre Entwicklungsumgebung
Quellcode kompilieren
Ein ausführbares Programm mit dem Linker erstellen
Der Entwicklungszyklus
HELLO.CPP - Ihr erstes C++-Programm
Die ersten Schritte mit Visual C++ 6
Fehler zur Kompilierzeit
Zusammenfassung
Fragen und Antworten
Workshop Tag 2 Die Bestandteile eines C++-Programms
Ein einfaches Programm
Eine kurze Einführung in cout
Kommentare
Funktionen
Funktionen verwenden
Zusammenfassung
Fragen und Antworten
Workshop Tag 3 Variablen und Konstanten
Was ist eine Variable?
Variablen definieren
Mehrere Variablen gleichzeitig erzeugen
Werte an Variablen zuweisen
typedef
Wann verwendet man short und wann long?
Zeichen
Konstanten
Aufzählungstypen
Zusammenfassung
Fragen und Antworten
Workshop Tag 4 Ausdrücke und Anweisungen
Anweisungen
Whitespace
Blöcke und Verbundanweisungen
Ausdrücke
Operatoren
Zusammengesetzte Operatoren
Inkrementieren und Dekrementieren
Rangfolge der Operatoren
Verschachtelte Klammern
Wahrheitswerte
Die if-Anweisung
Geschweifte Klammern in verschachtelten if-Anweisungen
Logische Operatoren
Verkürzte Prüfung
Rangfolge der Vergleichsoperatoren
Mehr über Wahr und Unwahr
Der Bedingungsoperator
Zusammenfassung
Fragen und Antworten
Workshop Tag 5 Funktionen
Was ist eine Funktion?
Rückgabewerte, Parameter und Argumente
Funktionen deklarieren und definieren
Ausführung von Funktionen
Lokale Variablen
Globale Variablen
Globale Variablen: mit Vorsicht zu genießen
Mehr zu den lokalen Variablen
Anweisungen in Funktionen
Funktionsargumente
Parameter sind lokale Variablen
Rückgabewerte
Standardparameter
Funktionen überladen
Besondere Funktionen
Arbeitsweise von Funktionen - ein Blick hinter die Kulissen
Zusammenfassung
Fragen und Antworten
Workshop Tag 6 Klassen
Neue Typen erzeugen
Klassen und Elemente
Auf Klassenelemente zugreifen
Private und Public
Klassenmethoden implementieren
Konstruktoren und Destruktoren
Konstante Elementfunktionen
Schnittstelle und Implementierung
Klassendeklarationen und Methodendefinitionen plazieren
Inline-Implementierung
Klassen als Datenelemente einer Klasse
Strukturen
Zusammenfassung
Fragen und Antworten
Workshop Tag 7 Mehr zur Programmsteuerung
Schleifenkonstruktionen
while-Schleifen
do...while-Schleifen
do...while
for-Schleifen
Summierende Schleifen
switch-Anweisungen
Zusammenfassung
Fragen und Antworten
Workshop Auf einen Blick
Aufbau der zweiten Woche Tag 8 Zeiger
Was ist ein Zeiger?
Warum man Zeiger verwendet
Stack und Heap
Speicherlücken
Objekte auf dem Heap erzeugen
Objekte löschen
Auf Datenelemente zugreifen
Datenelemente auf dem Heap
Der this-Zeiger
Vagabundierende Zeiger
Konstante Zeiger
Zeigerarithmetik
Zusammenfassung
Fragen und Antworten
Workshop Tag 9 Referenzen
Was ist eine Referenz?
Der Adreßoperator bei Referenzen
Was kann man referenzieren?
Null-Zeiger und Null-Referenzen
Funktionsargumente als Referenz übergeben
Header und Prototypen von Funktionen
Mehrere Werte zurückgeben
Übergabe als Referenz der Effizienz wegen
Wann verwendet man Referenzen und wann Zeiger?
Referenzen und Zeiger mischen
Referenzen auf nicht mehr vorhandene Objekte
Referenzen auf Objekte im Heap zurückgeben
Wem gehört der Zeiger?
Zusammenfassung
Fragen und Antworten
Workshop Tag 10 Funktionen - weiterführende Themen
Überladene Elementfunktionen
Standardwerte
Standardwerte oder überladene Funktionen?
Der Standardkonstruktor
Konstruktoren überladen
Objekte initialisieren
Der Kopierkonstruktor
Operatoren überladen
Umwandlungsoperatoren
Zusammenfassung
Fragen und Antworten
Workshop Tag 11 Vererbung
Was ist Vererbung?
Private und Protected
Konstruktoren und Destruktoren
Funktionen überschreiben
Virtuelle Methoden
Zusammenfassung
Fragen und Antworten
Workshop Tag 12 Arrays und verkettete Listen
Was ist ein Array?
Array-Elemente
Über das Ende eines Array schreiben
Fence Post Errors
Arrays initialisieren
Arrays deklarieren
Arrays von Objekten
Mehrdimensionale Arrays
Ein Wort zum Speicher
Arrays von Zeigern
Arrays auf dem Heap
Zeiger auf Arrays und Arrays von Zeigern
Zeiger und Array-Namen
Arrays im Heap löschen
char-Arrays
strcpy() und strncpy()
String-Klassen
Verkettete Listen und andere Strukturen
Fallstudie zu den verketteten Listen
Die einzelnen Komponenten
Was haben wir gelernt?
Array-Klassen
Zusammenfassung
Fragen und Antworten
Workshop Tag 13 Polymorphie
Probleme bei der einfachen Vererbung
Mehrfachvererbung
Abstrakte Datentypen (ADTs)
Das Überwachungsmuster
Zusammenfassung
Fragen und Antworten
Workshop Tag 14 Spezielle Themen zu Klassen und Funktionen
Statische Datenelemente
Statische Elementfunktionen
Zeiger auf Funktionen
Zeiger auf Elementfunktionen
Zusammenfassung
Fragen und Antworten
Workshop Auf einen Blick
Aufbau der dritten Woche Tag 15 Vererbung - weiterführende Themen
Einbettung (Containment)
Vererbung, Einbettung und Delegierung
Delegierung
Private Vererbung
Friend-Klassen
Friend-Funktionen
Friend-Funktionen und das Überladen von Operatoren
Überladung des Ausgabe-Operators
Zusammenfassung
Fragen und Antworten
Workshop Tag 16 Streams
Streams - ein Überblick
Streams und Puffer
Standard-E/A-Objekte
Umleitung
Eingabe mit cin
Weitere Elementfunktionen von cin
Ausgabe mit cout
Verwandte Funktionen
Manipulatoren, Flags und Formatierungsanweisungen
Streams und die Funktion printf()
Eingabe und Ausgabe für Dateien
ofstream
Binärdateien und Textdateien
Befehlszeilenverarbeitung
Zusammenfassung
Fragen und Antworten
Workshop Tag 17 Namensbereiche
Zum Einstieg
Funktionen und Klassen werden über den Namen aufgelöst
Namensbereiche einrichten
Namensbereiche einsetzen
Das Schlüsselwort using
Aliase für Namensbereich
Der unbenannte Namensbereich
Der Standardnamensbereich std
Zusammenfassung
Fragen und Antworten
Workshop Tag 18 Objektorientierte Analyse und objektorientiertes Design
Ist C++ objektorientiert?
Modelle erstellen
Software-Design: Die Modelliersprache
Software-Design: die Vorgehensweise
Konzeptionierung
Analyse der Anforderungen
Design
Zusammenfassung
Fragen und Antworten
Workshop Tag 19 Templates
Was sind Templates?
Parametrisierte Typen
Definition von Templates
Template-Funktionen
Templates und Friends
Template-Elemente
Die Standard Template Library
Container
Sequentielle Container
Stacks
Queues
Assoziative Container
Algorithmenklassen
Zusammenfassung
Fragen und Antworten
Workshop Tag 20 Exceptions und Fehlerbehandlung
Bugs, Fehler, Irrtümer und Code Rot
Exceptions
try-Blöcke und catch-Blöcke einsetzen
Datenelemente in Exceptions und Benennung von Exception-Objekten
Exceptions und Templates
Exceptions ohne Fehler
Fehler und Fehlersuche mit dem Debugger
Zusammenfassung
Fragen und Antworten
Workshop Tag 21 So geht's weiter
Präprozessor und Compiler
Das Zwischenformat ansehen
Die Anweisung #define
Schutz vor Mehrfachdeklarationen
Makrofunktionen
Inline-Funktionen
String-Manipulation
Vordefinierte Makros
assert
Bitmanipulation
Stil
Wie geht es weiter?
Zusammenfassung
Fragen und Antworten
Workshop Anhang A Operatorvorrang
Anhang B C++-Schlüsselwörter
Anhang C Binäres und hexadezimales Zahlensystem
Andere Basen
Betrachtungen zu den Basen der Zahlensysteme
Das Binärsystem
Hexadezimalsystem Anhang D Anworten und Lösungen
Tag 1
Tag 2
Tag 3
Tag 4
Tag 5
Tag 6
Tag 7
Tag 8
Tag 9
Tag 10
Tag 11
Tag 12
Tag 13
Tag 14
Tag 15
Tag 16
Tag 17
Tag 18
Tag 19
Tag 20
Tag 21 Anhang E Die CD zum Buch
Stichwortverzeichnis
© Markt&Technik Verlag , ein Imprint der Pearson Education Deutschland GmbH
HTML-Erstellung: Reemers EDV-Satz , Krefeld
Was ist neu in der dritten Auflage?
Über den Autor
Einführung
An wen sich dieses Buch wendet
Konventionen Auf einen Blick
Hinweis für C-Programmierer
Aufbau der ersten Woche Tag 1 Erste Schritte
Ein kurzer geschichtlicher Abriß der Programmiersprache C++
Programme
Probleme lösen
Wie sich C++ entwickelt hat
Sollte ich zuerst C lernen?
C++ und Java
Der ANSI-Standard
Vorbereitungen
Ihre Entwicklungsumgebung
Quellcode kompilieren
Ein ausführbares Programm mit dem Linker erstellen
Der Entwicklungszyklus
HELLO.CPP - Ihr erstes C++-Programm
Die ersten Schritte mit Visual C++ 6
Fehler zur Kompilierzeit
Zusammenfassung
Fragen und Antworten
Workshop Tag 2 Die Bestandteile eines C++-Programms
Ein einfaches Programm
Eine kurze Einführung in cout
Kommentare
Funktionen
Funktionen verwenden
Zusammenfassung
Fragen und Antworten
Workshop Tag 3 Variablen und Konstanten
Was ist eine Variable?
Variablen definieren
Mehrere Variablen gleichzeitig erzeugen
Werte an Variablen zuweisen
typedef
Wann verwendet man short und wann long?
Zeichen
Konstanten
Aufzählungstypen
Zusammenfassung
Fragen und Antworten
Workshop Tag 4 Ausdrücke und Anweisungen
Anweisungen
Whitespace
Blöcke und Verbundanweisungen
Ausdrücke
Operatoren
Zusammengesetzte Operatoren
Inkrementieren und Dekrementieren
Rangfolge der Operatoren
Verschachtelte Klammern
Wahrheitswerte
Die if-Anweisung
Geschweifte Klammern in verschachtelten if-Anweisungen
Logische Operatoren
Verkürzte Prüfung
Rangfolge der Vergleichsoperatoren
Mehr über Wahr und Unwahr
Der Bedingungsoperator
Zusammenfassung
Fragen und Antworten
Workshop Tag 5 Funktionen
Was ist eine Funktion?
Rückgabewerte, Parameter und Argumente
Funktionen deklarieren und definieren
Ausführung von Funktionen
Lokale Variablen
Globale Variablen
Globale Variablen: mit Vorsicht zu genießen
Mehr zu den lokalen Variablen
Anweisungen in Funktionen
Funktionsargumente
Parameter sind lokale Variablen
Rückgabewerte
Standardparameter
Funktionen überladen
Besondere Funktionen
Arbeitsweise von Funktionen - ein Blick hinter die Kulissen
Zusammenfassung
Fragen und Antworten
Workshop Tag 6 Klassen
Neue Typen erzeugen
Klassen und Elemente
Auf Klassenelemente zugreifen
Private und Public
Klassenmethoden implementieren
Konstruktoren und Destruktoren
Konstante Elementfunktionen
Schnittstelle und Implementierung
Klassendeklarationen und Methodendefinitionen plazieren
Inline-Implementierung
Klassen als Datenelemente einer Klasse
Strukturen
Zusammenfassung
Fragen und Antworten
Workshop Tag 7 Mehr zur Programmsteuerung
Schleifenkonstruktionen
while-Schleifen
do...while-Schleifen
do...while
for-Schleifen
Summierende Schleifen
switch-Anweisungen
Zusammenfassung
Fragen und Antworten
Workshop Auf einen Blick
Aufbau der zweiten Woche Tag 8 Zeiger
Was ist ein Zeiger?
Warum man Zeiger verwendet
Stack und Heap
Speicherlücken
Objekte auf dem Heap erzeugen
Objekte löschen
Auf Datenelemente zugreifen
Datenelemente auf dem Heap
Der this-Zeiger
Vagabundierende Zeiger
Konstante Zeiger
Zeigerarithmetik
Zusammenfassung
Fragen und Antworten
Workshop Tag 9 Referenzen
Was ist eine Referenz?
Der Adreßoperator bei Referenzen
Was kann man referenzieren?
Null-Zeiger und Null-Referenzen
Funktionsargumente als Referenz übergeben
Header und Prototypen von Funktionen
Mehrere Werte zurückgeben
Übergabe als Referenz der Effizienz wegen
Wann verwendet man Referenzen und wann Zeiger?
Referenzen und Zeiger mischen
Referenzen auf nicht mehr vorhandene Objekte
Referenzen auf Objekte im Heap zurückgeben
Wem gehört der Zeiger?
Zusammenfassung
Fragen und Antworten
Workshop Tag 10 Funktionen - weiterführende Themen
Überladene Elementfunktionen
Standardwerte
Standardwerte oder überladene Funktionen?
Der Standardkonstruktor
Konstruktoren überladen
Objekte initialisieren
Der Kopierkonstruktor
Operatoren überladen
Umwandlungsoperatoren
Zusammenfassung
Fragen und Antworten
Workshop Tag 11 Vererbung
Was ist Vererbung?
Private und Protected
Konstruktoren und Destruktoren
Funktionen überschreiben
Virtuelle Methoden
Zusammenfassung
Fragen und Antworten
Workshop Tag 12 Arrays und verkettete Listen
Was ist ein Array?
Array-Elemente
Über das Ende eines Array schreiben
Fence Post Errors
Arrays initialisieren
Arrays deklarieren
Arrays von Objekten
Mehrdimensionale Arrays
Ein Wort zum Speicher
Arrays von Zeigern
Arrays auf dem Heap
Zeiger auf Arrays und Arrays von Zeigern
Zeiger und Array-Namen
Arrays im Heap löschen
char-Arrays
strcpy() und strncpy()
String-Klassen
Verkettete Listen und andere Strukturen
Fallstudie zu den verketteten Listen
Die einzelnen Komponenten
Was haben wir gelernt?
Array-Klassen
Zusammenfassung
Fragen und Antworten
Workshop Tag 13 Polymorphie
Probleme bei der einfachen Vererbung
Mehrfachvererbung
Abstrakte Datentypen (ADTs)
Das Überwachungsmuster
Zusammenfassung
Fragen und Antworten
Workshop Tag 14 Spezielle Themen zu Klassen und Funktionen
Statische Datenelemente
Statische Elementfunktionen
Zeiger auf Funktionen
Zeiger auf Elementfunktionen
Zusammenfassung
Fragen und Antworten
Workshop Auf einen Blick
Aufbau der dritten Woche Tag 15 Vererbung - weiterführende Themen
Einbettung (Containment)
Vererbung, Einbettung und Delegierung
Delegierung
Private Vererbung
Friend-Klassen
Friend-Funktionen
Friend-Funktionen und das Überladen von Operatoren
Überladung des Ausgabe-Operators
Zusammenfassung
Fragen und Antworten
Workshop Tag 16 Streams
Streams - ein Überblick
Streams und Puffer
Standard-E/A-Objekte
Umleitung
Eingabe mit cin
Weitere Elementfunktionen von cin
Ausgabe mit cout
Verwandte Funktionen
Manipulatoren, Flags und Formatierungsanweisungen
Streams und die Funktion printf()
Eingabe und Ausgabe für Dateien
ofstream
Binärdateien und Textdateien
Befehlszeilenverarbeitung
Zusammenfassung
Fragen und Antworten
Workshop Tag 17 Namensbereiche
Zum Einstieg
Funktionen und Klassen werden über den Namen aufgelöst
Namensbereiche einrichten
Namensbereiche einsetzen
Das Schlüsselwort using
Aliase für Namensbereich
Der unbenannte Namensbereich
Der Standardnamensbereich std
Zusammenfassung
Fragen und Antworten
Workshop Tag 18 Objektorientierte Analyse und objektorientiertes Design
Ist C++ objektorientiert?
Modelle erstellen
Software-Design: Die Modelliersprache
Software-Design: die Vorgehensweise
Konzeptionierung
Analyse der Anforderungen
Design
Zusammenfassung
Fragen und Antworten
Workshop Tag 19 Templates
Was sind Templates?
Parametrisierte Typen
Definition von Templates
Template-Funktionen
Templates und Friends
Template-Elemente
Die Standard Template Library
Container
Sequentielle Container
Stacks
Queues
Assoziative Container
Algorithmenklassen
Zusammenfassung
Fragen und Antworten
Workshop Tag 20 Exceptions und Fehlerbehandlung
Bugs, Fehler, Irrtümer und Code Rot
Exceptions
try-Blöcke und catch-Blöcke einsetzen
Datenelemente in Exceptions und Benennung von Exception-Objekten
Exceptions und Templates
Exceptions ohne Fehler
Fehler und Fehlersuche mit dem Debugger
Zusammenfassung
Fragen und Antworten
Workshop Tag 21 So geht's weiter
Präprozessor und Compiler
Das Zwischenformat ansehen
Die Anweisung #define
Schutz vor Mehrfachdeklarationen
Makrofunktionen
Inline-Funktionen
String-Manipulation
Vordefinierte Makros
assert
Bitmanipulation
Stil
Wie geht es weiter?
Zusammenfassung
Fragen und Antworten
Workshop Anhang A Operatorvorrang
Anhang B C++-Schlüsselwörter
Anhang C Binäres und hexadezimales Zahlensystem
Andere Basen
Betrachtungen zu den Basen der Zahlensysteme
Das Binärsystem
Hexadezimalsystem Anhang D Anworten und Lösungen
Tag 1
Tag 2
Tag 3
Tag 4
Tag 5
Tag 6
Tag 7
Tag 8
Tag 9
Tag 10
Tag 11
Tag 12
Tag 13
Tag 14
Tag 15
Tag 16
Tag 17
Tag 18
Tag 19
Tag 20
Tag 21 Anhang E Die CD zum Buch
Stichwortverzeichnis
© Markt&Technik Verlag , ein Imprint der Pearson Education Deutschland GmbH
HTML-Erstellung: Reemers EDV-Satz , Krefeld
Über den Autor
Einführung
An wen sich dieses Buch wendet
Konventionen Auf einen Blick
Hinweis für C-Programmierer
Aufbau der ersten Woche Tag 1 Erste Schritte
Ein kurzer geschichtlicher Abriß der Programmiersprache C++
Programme
Probleme lösen
Wie sich C++ entwickelt hat
Sollte ich zuerst C lernen?
C++ und Java
Der ANSI-Standard
Vorbereitungen
Ihre Entwicklungsumgebung
Quellcode kompilieren
Ein ausführbares Programm mit dem Linker erstellen
Der Entwicklungszyklus
HELLO.CPP - Ihr erstes C++-Programm
Die ersten Schritte mit Visual C++ 6
Fehler zur Kompilierzeit
Zusammenfassung
Fragen und Antworten
Workshop Tag 2 Die Bestandteile eines C++-Programms
Ein einfaches Programm
Eine kurze Einführung in cout
Kommentare
Funktionen
Funktionen verwenden
Zusammenfassung
Fragen und Antworten
Workshop Tag 3 Variablen und Konstanten
Was ist eine Variable?
Variablen definieren
Mehrere Variablen gleichzeitig erzeugen
Werte an Variablen zuweisen
typedef
Wann verwendet man short und wann long?
Zeichen
Konstanten
Aufzählungstypen
Zusammenfassung
Fragen und Antworten
Workshop Tag 4 Ausdrücke und Anweisungen
Anweisungen
Whitespace
Blöcke und Verbundanweisungen
Ausdrücke
Operatoren
Zusammengesetzte Operatoren
Inkrementieren und Dekrementieren
Rangfolge der Operatoren
Verschachtelte Klammern
Wahrheitswerte
Die if-Anweisung
Geschweifte Klammern in verschachtelten if-Anweisungen
Logische Operatoren
Verkürzte Prüfung
Rangfolge der Vergleichsoperatoren
Mehr über Wahr und Unwahr
Der Bedingungsoperator
Zusammenfassung
Fragen und Antworten
Workshop Tag 5 Funktionen
Was ist eine Funktion?
Rückgabewerte, Parameter und Argumente
Funktionen deklarieren und definieren
Ausführung von Funktionen
Lokale Variablen
Globale Variablen
Globale Variablen: mit Vorsicht zu genießen
Mehr zu den lokalen Variablen
Anweisungen in Funktionen
Funktionsargumente
Parameter sind lokale Variablen
Rückgabewerte
Standardparameter
Funktionen überladen
Besondere Funktionen
Arbeitsweise von Funktionen - ein Blick hinter die Kulissen
Zusammenfassung
Fragen und Antworten
Workshop Tag 6 Klassen
Neue Typen erzeugen
Klassen und Elemente
Auf Klassenelemente zugreifen
Private und Public
Klassenmethoden implementieren
Konstruktoren und Destruktoren
Konstante Elementfunktionen
Schnittstelle und Implementierung
Klassendeklarationen und Methodendefinitionen plazieren
Inline-Implementierung
Klassen als Datenelemente einer Klasse
Strukturen
Zusammenfassung
Fragen und Antworten
Workshop Tag 7 Mehr zur Programmsteuerung
Schleifenkonstruktionen
while-Schleifen
do...while-Schleifen
do...while
for-Schleifen
Summierende Schleifen
switch-Anweisungen
Zusammenfassung
Fragen und Antworten
Workshop Auf einen Blick
Aufbau der zweiten Woche Tag 8 Zeiger
Was ist ein Zeiger?
Warum man Zeiger verwendet
Stack und Heap
Speicherlücken
Objekte auf dem Heap erzeugen
Objekte löschen
Auf Datenelemente zugreifen
Datenelemente auf dem Heap
Der this-Zeiger
Vagabundierende Zeiger
Konstante Zeiger
Zeigerarithmetik
Zusammenfassung
Fragen und Antworten
Workshop Tag 9 Referenzen
Was ist eine Referenz?
Der Adreßoperator bei Referenzen
Was kann man referenzieren?
Null-Zeiger und Null-Referenzen
Funktionsargumente als Referenz übergeben
Header und Prototypen von Funktionen
Mehrere Werte zurückgeben
Übergabe als Referenz der Effizienz wegen
Wann verwendet man Referenzen und wann Zeiger?
Referenzen und Zeiger mischen
Referenzen auf nicht mehr vorhandene Objekte
Referenzen auf Objekte im Heap zurückgeben
Wem gehört der Zeiger?
Zusammenfassung
Fragen und Antworten
Workshop Tag 10 Funktionen - weiterführende Themen
Überladene Elementfunktionen
Standardwerte
Standardwerte oder überladene Funktionen?
Der Standardkonstruktor
Konstruktoren überladen
Objekte initialisieren
Der Kopierkonstruktor
Operatoren überladen
Umwandlungsoperatoren
Zusammenfassung
Fragen und Antworten
Workshop Tag 11 Vererbung
Was ist Vererbung?
Private und Protected
Konstruktoren und Destruktoren
Funktionen überschreiben
Virtuelle Methoden
Zusammenfassung
Fragen und Antworten
Workshop Tag 12 Arrays und verkettete Listen
Was ist ein Array?
Array-Elemente
Über das Ende eines Array schreiben
Fence Post Errors
Arrays initialisieren
Arrays deklarieren
Arrays von Objekten
Mehrdimensionale Arrays
Ein Wort zum Speicher
Arrays von Zeigern
Arrays auf dem Heap
Zeiger auf Arrays und Arrays von Zeigern
Zeiger und Array-Namen
Arrays im Heap löschen
char-Arrays
strcpy() und strncpy()
String-Klassen
Verkettete Listen und andere Strukturen
Fallstudie zu den verketteten Listen
Die einzelnen Komponenten
Was haben wir gelernt?
Array-Klassen
Zusammenfassung
Fragen und Antworten
Workshop Tag 13 Polymorphie
Probleme bei der einfachen Vererbung
Mehrfachvererbung
Abstrakte Datentypen (ADTs)
Das Überwachungsmuster
Zusammenfassung
Fragen und Antworten
Workshop Tag 14 Spezielle Themen zu Klassen und Funktionen
Statische Datenelemente
Statische Elementfunktionen
Zeiger auf Funktionen
Zeiger auf Elementfunktionen
Zusammenfassung
Fragen und Antworten
Workshop Auf einen Blick
Aufbau der dritten Woche Tag 15 Vererbung - weiterführende Themen
Einbettung (Containment)
Vererbung, Einbettung und Delegierung
Delegierung
Private Vererbung
Friend-Klassen
Friend-Funktionen
Friend-Funktionen und das Überladen von Operatoren
Überladung des Ausgabe-Operators
Zusammenfassung
Fragen und Antworten
Workshop Tag 16 Streams
Streams - ein Überblick
Streams und Puffer
Standard-E/A-Objekte
Umleitung
Eingabe mit cin
Weitere Elementfunktionen von cin
Ausgabe mit cout
Verwandte Funktionen
Manipulatoren, Flags und Formatierungsanweisungen
Streams und die Funktion printf()
Eingabe und Ausgabe für Dateien
ofstream
Binärdateien und Textdateien
Befehlszeilenverarbeitung
Zusammenfassung
Fragen und Antworten
Workshop Tag 17 Namensbereiche
Zum Einstieg
Funktionen und Klassen werden über den Namen aufgelöst
Namensbereiche einrichten
Namensbereiche einsetzen
Das Schlüsselwort using
Aliase für Namensbereich
Der unbenannte Namensbereich
Der Standardnamensbereich std
Zusammenfassung
Fragen und Antworten
Workshop Tag 18 Objektorientierte Analyse und objektorientiertes Design
Ist C++ objektorientiert?
Modelle erstellen
Software-Design: Die Modelliersprache
Software-Design: die Vorgehensweise
Konzeptionierung
Analyse der Anforderungen
Design
Zusammenfassung
Fragen und Antworten
Workshop Tag 19 Templates
Was sind Templates?
Parametrisierte Typen
Definition von Templates
Template-Funktionen
Templates und Friends
Template-Elemente
Die Standard Template Library
Container
Sequentielle Container
Stacks
Queues
Assoziative Container
Algorithmenklassen
Zusammenfassung
Fragen und Antworten
Workshop Tag 20 Exceptions und Fehlerbehandlung
Bugs, Fehler, Irrtümer und Code Rot
Exceptions
try-Blöcke und catch-Blöcke einsetzen
Datenelemente in Exceptions und Benennung von Exception-Objekten
Exceptions und Templates
Exceptions ohne Fehler
Fehler und Fehlersuche mit dem Debugger
Zusammenfassung
Fragen und Antworten
Workshop Tag 21 So geht's weiter
Präprozessor und Compiler
Das Zwischenformat ansehen
Die Anweisung #define
Schutz vor Mehrfachdeklarationen
Makrofunktionen
Inline-Funktionen
String-Manipulation
Vordefinierte Makros
assert
Bitmanipulation
Stil
Wie geht es weiter?
Zusammenfassung
Fragen und Antworten
Workshop Anhang A Operatorvorrang
Anhang B C++-Schlüsselwörter
Anhang C Binäres und hexadezimales Zahlensystem
Andere Basen
Betrachtungen zu den Basen der Zahlensysteme
Das Binärsystem
Hexadezimalsystem Anhang D Anworten und Lösungen
Tag 1
Tag 2
Tag 3
Tag 4
Tag 5
Tag 6
Tag 7
Tag 8
Tag 9
Tag 10
Tag 11
Tag 12
Tag 13
Tag 14
Tag 15
Tag 16
Tag 17
Tag 18
Tag 19
Tag 20
Tag 21 Anhang E Die CD zum Buch
Stichwortverzeichnis
© Markt&Technik Verlag , ein Imprint der Pearson Education Deutschland GmbH
HTML-Erstellung: Reemers EDV-Satz , Krefeld