INDICE: Einführung 19Zu diesem Buch 19Ãœber die CD 19Was ist C++? 20Konventionen in diesem Buch 20Wie dieses Buch aufgebaut ist 21Das ist noch nicht alles 21Teil I: Einführung in die C++-Programmierung 22Teil II: Ein brauchbarer C++-Programmierer werden 22Teil III: Eine Einführung in Klassen 22Teil IV: Vererbung 22Teil V: Optionale Funktionen 22Teil VI: Der Top-Ten-Teil 23Icons in diesem Buch 23Wie geht’s weiter? 23Teil I Einführung in die C++-Programmierung 25Kapitel 1 Ihr erstes C++-Programm 27Was ist ein Programm? 27Code::Blocks unter Windows installieren 28Ihr erstes C++-Programm erstellen 31Ein Projekt anlegen 32Den C++-Code eingeben 33Ihr Programm erstellen 35Ihr Programm ausführen 36Kommentierte Programme lesen 37Das gemeinsame Gerüst aller C++-Programme38Sourcecode durch Kommentare erlÃñutern 38Programme bestehen aus C++-Anweisungen 39Deklarationen schreiben 40Ausgaben erzeugen 41Ausdrücke berechnen 41Das Ergebnis eines Ausdrucks speichern 41Den Rest des Programms untersuchen 42Kapitel 2 Variablen verwenden 43Variablen deklarieren 43Verschiedene Variablentypen für alle FÃñlle 44Ãœberblick über die EinschrÃñnkungen der Ganzzahlen inC++ 45Das Rundungsproblem l sen 46Die EinschrÃñnkungen von Fließkommazahlen 47Variablentypen deklarieren 48Konstantentypen 50Wertebereiche von numerischenTypen 51Sonderzeichen 52Zeichen mit doppelter Spurbreite 53Sind diese Berechnungen wirklich logisch? 54Mixed-Mode-Ausdrücke 54Automatische Deklarationen 55Kapitel 3 Mathematische Operationen ausführen 57Einfache binÃñre Operationenausführen 57Ausdrücke zerlegen 59Die Reihenfolge von Operationen bestimmen 59UnÃñre Operationen ausführen 60Mit Zuweisungsoperatoren arbeiten 61Kapitel 4 Logische Operationen ausführen 63Warum brauchen wir überhaupt logische Operationen? 63Mit den einfachen logischen Operatoren arbeiten 64Logische Werte speichern 65Mit logischen int-Variablen arbeiten 66Vorsicht bei logischen Operationen mit Fließkommavariablen 67BinÃñrzahlen reprÃñsentieren 68Das dezimale Zahlensystem 69Andere Zahlensysteme 69Das binÃñre Zahlensystem 69Bitweise logische Operationen ausführen 70Die bitweisen Operatoren 71Die bitweisen Operatoren verwenden 72Ein einfacher Test 73Etwas Logisches mit logischen Berechnungen tun 75Kapitel 5 Den Programmablauf steuern 77Den Programmablauf mit Verzweigungsbefehlen steuern 77Schleifen in einem Programm ausführen 79Eine Schleife ausführen, wÃñhrend eine Bedingung true ist 80Die Autoinkrement- und Autodekrement-Funktionen verwenden 81Mit der for-Schleife arbeiten 83Die gefürchtete Endlosschleife vermeiden 85Spezielle Schleifenkontrollen anwenden 86Steuerbefehle verschachteln 89Die Mehrwege-Verzweigung: switch 91Teil II Ein brauchbarerC++-Programmierer werden 93Kapitel 6 Funktionen erstellen 95Eine Funktion schreiben und verwenden 95Unsere erste Funktion definieren 98Die Funktion sumSequence() definieren 98Die Funktion sumSequence() aufrufen 98Teile und herrsche 99Die Details von Funktionen verstehen 99Einfache Funktionen verstehen 100Funktionen mit Argumenten verstehen 100Funktionsnamen überladen 104Funktionsprototypen definieren 105Variable Speichertypen 107Kapitel 7 Sequenzen in Arrays speichern 109Wozu werden Arrays ben tigt? 109Ein Array verwenden 110Ein Array initialisieren 114Mit einem zu großen Indexwert auf ein Array zugreifen 115Mit Arrays arbeiten 115Arrays von Arrays definieren und verwenden 115Arrays von Zeichen verwenden 116Ein Array von Zeichen erstellen 116Einen String von Zeichen erstellen 117Zeichenstrings manipulieren 119Ein paar Bibliotheksfunktionen 121Mehr Platz für Wide-Strings 122Kapitel 8 Ein erster Blick auf C++-Zeiger 125Variablengr ße 125Was ist in einer Adresse enthalten? 127Adressoperatoren 127Zeigervariablen verwenden 129Verschiedene Typen von Zeigern verwenden 130Zeigeran Funktionen übergeben 131Ãœbergabe als Wert 131Zeigerwert übergeben 132Ãœbergabe per Referenz 133Konstante Irritationen 134Einen Speicherblock namens Heap nutzen 135Begrenzter Gültigkeitsbereich 135Das Problem des Gültigkeitsbereichs untersuchen 137Mit Hilfe des Heaps eine L sung finden 137Kapitel 9 Ein zweiter Blick auf C++-Zeiger 139Operationen für Zeigervariablen definieren 139Arrays im Licht von Zeigervariablen noch einmal betrachten 140Operatoren auf die Adresse eines Arrays anwenden 141Zeigeroperationen auf einen String ausdehnen 143Gründe für die zeigerbasierte String-Manipulation 144Operatoren auf andere Zeigertypen als char anwenden 145Einen Zeiger mit einem Array vergleichen 145Wann gibt’s einen Zeiger nicht? 148Arrays von Zeigern deklarieren und verwenden 149Arrays von Zeichenstrings nutzen 150Auf die Argumente von main() zugreifen 151Kapitel 10 Der C++-PrÃñprozessor 155Was ist ein PrÃñprozessor? 155Einbinden von Dateien 156Die #Definition von Dingen 159Und wenn ich nichts #definieren will? 161Ein paar Alternativen aufzÃñhlen 162Dinge mit einem »ja aber« einbinden 163Vordefinierte Objekte 164Typendefinitionen mit typedef 167Teil IIIEine Einführung in Klassen 169Kapitel 11 Ein Blick auf die objektorientierteProgrammierung 171Die Abstraktion und der Mikrowellenherd 171Nachos prozedural zubereiten 172Nachos objektorientiert zubereiten 172Klassenbildung und Mikrowellen 173Wozu Klassen bilden? 174Kapitel 12 Klassen in C++ 175Einführung derKlasse 175Das Format einer Klasse 175Auf die Elemente einer Klasse zugreifen 176Objekte aktivieren 177Reale Objekte simulieren 177Wozu dienen Elementfunktionen? 178Eine Elementfunktion hinzufügen 179Eine Elementfunktion aufrufen 180Von einer Elementfunktion auf andere Elemente zugreifen 182Aufl sung des Gültigkeitsbereichs 183Eine Elementfunktion in der Klasse definieren 184Elementfunktionen separat definieren 186Elementfunktionen überladen 188Kapitel 13 Objekte mit Zeigern manipulieren 191Arrays aus Objekten deklarieren 191Zeiger auf Objekte deklarieren 192Einen Objektzeiger dereferenzieren 193Der Pfeiloperator 194Objekte an Funktionen übergeben 194Eine Funktion mit einem Objektwert aufrufen 194Eine Funktion mit einem Objektzeiger aufrufen 196Eine Funktion mit demReferenzoperator aufrufen 197Wozu Zeiger oder Referenzen? 199Zurück zum Heap199Viele Objekte auf dem Heap anlegen 200Zeiger und Referenzen vergleichen 201Verknüpfungen mit verketteten Listen erstellen 201Andere Operationen auf eine verkettete Liste anwenden 202Das LinkedListData-Beispielprogramm 203Ein Hoffnungsstrahl: Eine Liste von Containern, die mit der C++-Library verknüpft sind 207Kapitel 14 Nicht st ren: Elemente schützen 209Elemente schützen 209Wozuben tigen Sie geschützte Elemente? 209Wie geschützte Elemente funktionieren210Argumente für den Einsatz geschützter Elemente 211Den internen Status einer Klasse schützen 211Eine Klasse mit eingeschrÃñnkter Schnittstelle verwenden 212Nicht-Elementfunktionen Zugriff auf geschützte Elemente geben 213Kapitel 15 Objekte konstruieren und zerst ren 217Objekte erstellen 217Konstruktoren verwenden 218Ein einzelnes Objekt konstruieren 218Mehrere Objekte konstruieren220Ein Duplex konstruieren 221Einen Destruktor analysieren 223Warum Sie den Destruktor ben tigen 223Mit Destruktoren arbeiten 223Kapitel 16 Konstruktoren mit Argumenten 229Konstruktoren mit Argumenten ausstatten 229Einen Konstruktor verwenden 230Konstruktoren überladen 232StandardmÃñßige Standardkonstruktoren 234Klassenelemente konstruieren 236Ein komplexes Datenelement konstruieren 236Ein konstantes Datenelement konstruieren 241Die Reihenfolge der Konstruktion241Lokale Objekte werden der Reihenfolge nach konstruiert 242Statische Objekte werden nur einmal konstruiert 242Alle globalen Objekte werden vor main() konstruiert 243Globale Objekte werden in keiner bestimmten Reihenfolge konstruiert 243Elemente werden in der Reihenfolge konstruiert, in der sie deklariert werden 245Destruktoren werden in der umgekehrten Reihenfolge derKonstruktoren aufgerufen 245Konstruktoren als Form der Konvertierung 245Kapitel 17 Der Copy-Konstruktor 247Ein Objekt kopieren 247Warum Sie Copy-Konstruktoren brauchen 247Die Copy-Konstruktoren verwenden 248Der automatische Copy-Konstruktor 250Flache oder tiefe Kopien erstellen 252TemporÃñre Objekte 256TemporÃñre Objekte dauerhaft vermeiden 258Kapitel 18 Statische Elemente 259Ein statisches Element definieren 259Warum Sie statische Elemente ben tigen 259Statische Elemente verwenden 260Statische Datenelemente referenzieren 261Verwendungsm glichkeiten statischer Datenelemente 262Statische Elementfunktionen deklarieren 263Was ist überhaupt this? 265Teil IV Vererbung 267Kapitel 19 Eine Klasse erben 269Brauche ichVererbung? 270Wie funktioniert die Vererbung einer Klasse? 271Eine Unterklasse verwenden 273Eine Unterklasse konstruieren 273Eine Unterklasse zerst ren 275Die HAS-A-Beziehung 275Kapitel 20 Virtuelle Elementfunktionen 277Warum Sie Polymorphismus brauchen 280Wie funktioniert Polymorphismus? 280Wann ist eine Funktion virtuell und wann nicht? 282Virtuelle Betrachtungen 283Kapitel 21 Klassenfaktorisieren 285Das Faktorisieren 285Abstrakte Klassen implementieren 289DasKonzept der abstrakten Klasse 290Wie man aus einer abstrakten Klasse eine wirkliche Klasse macht 292Abstrakte Klassen übergeben 292Teil V Optionale Funktionen 293Kapitel 22 Ein neuer Zuweisungsoperator 295Operatoren mit Funktionen vergleichen 295Einen neuen Operator einfügen 296Flache Kopien zu erstellen istein tiefes Problem 296Den Zuweisungsoperator überladen 298Den Indexoperator überladen 303Kapitel 23 Mit Stream-I/O arbeiten 305Wie funktioniert Stream-I/O? 305Default Stream-Objekte 306Die fstream-Unterklassen 307VielfÃñltiges Öffnen 308Datei, was machst Du gerade? 309Kann ich ein Beispiel sehen? 309Andere Methoden der Stream-Klassen 313Streams direkt lesen und schreiben 314Das Format kontrollieren 316Was ist mit endl? 318Positionierung des Zeigers innerhalb einer Datei 318Die stringstream-Unterklassen verwenden 319Manipulatoren manipulieren 322Kapitel 24 Fehler verarbeiten - Ausnahmen 325Warum brauche ich einen neue
- ISBN: 978-3-527-70834-5
- Editorial: Wiley-VCH
- Encuadernacion: Rústica
- Páginas: 395
- Fecha Publicación: 18/01/2012
- Nº Volúmenes: 1
- Idioma: Alemán