Programmieren in C+ Einführung in den Sprachstandard C++ Springer-Verlag Berlin Heidelberg New York London Paris Tokyo Hong Kong Barcelona Budapest

Ähnliche Dokumente
Vorwort zur zweiten Auflage 1. Vorwort zur ersten Auflage 2

Objektorientiertes Programmieren in C++

Peter Prinz Ulla Kirch-Prinz C+ + Lernen und professionell anwenden. ffl mitp

Die С ++-Programmiersprache

Martin Schader Lars Schmidt-Thieme. Java. Eine Einführung. Dritte, neubearbeitete und erweiterte Auflage. Mit 70 Abbildungen und 26 Tabellen.

Werner Achte rt DATA BECKER

Inhaltsverzeichnis. Vorwort

Programmierung in C/C++

Martin Schader Lars Schmidt-Thieme. Java. Einführung in die obj ektor ientier te Programmierung. Mit 54 Abbildungen und 19 Tabellen.

С als erste Programmiersprache

ISO-SiMMlarcl. als erste Programmiersprache. Von Prof. Dr. Joachim Goll Uwe Grüner Prof. Herbert Wiese 2., durchgesehene Auflage

Inhaltsverzeichnis I Grundlagen...1 II Programmieren in C/C

Die C++-Programmiersprache

magnum C++ WALTER SAUMWEBER kompakt komplett kompetent

Java als erste Programmiersprache

Kapitel 2 Elementare Datentypen, Konstanten und Variablen Elementare Datentypen

Einleitung Grundlagen 23

Einführung in die Programmierung mit C++

Berichte aus der Informatik. Dieter Pawelczak. Start in die C-Programmierung

Java als erste. Programmiersprache. Java 2 Plattform. Von Prof. Dr. Joachim Goll Cornelia Weiß Peter Rothländer. 2., durchgesehene Auflage

Objekttechnologie. Reihenherausgeber Martin Schader, Mannheim

Grundkurs Software- Entwicklung mit C++

Objektorientiertes Programmieren

Objektorientierte Programmierung mite**

C++ - Objektorientierte Programmierung Polymorphie

C++für Naturwissenschaftler

Prof. W. Henrich Seite 1

Manfred Dausmann Ulrich BröckI Dominik Schoop Joachim Goll C als erste Programmiersprache

4. Objektorientierte Programmierung mit C++

Programmieren in. Brian W. Kernighan Dennis M. Ritchie ANSIC. Mit dem C-Reference Manual in deutscher Sprache. Zweite Ausgabe

Inhaltsverzeichnis. 4.9 Aufgaben... 63

Überblick. 5. Objekt und Klasse, Elementfunktionen

Überblick. R.Grossmann / P. Sobe 1

DAP2-Programmierpraktikum Einführung in C++ (Teil 2)

Java. Von den Grundlagen bis zu Threads und Netzen von Prof. Dr. Ernst-Wolfgang Dieterich Fachhochschule Ulm

ASCII-Tabelle. o 1 2. o o p

TEIL I: OBJEKTORIENTIERUNG UND GRUNDKURS JAVA GRUNDLAGEN DER PROGRAMMIERUNG... 4

Ulrich Kaiser C/C++ Von den Grundlagen zur professionellen Programmierung. Galileo Press

Visual C#.NET. Bearbeitet von Patrick A. Lorenz

Inhalt. 1 Einstieg in die Welt von C Erste Schritte in C 31. Vorwort... 15

Themen. Statische Methoden inline Methoden const Methoden this Zeiger Destruktor Kopierkonstruktor Überladen von Operatoren

Objektorientiert in C++

Inhalt. Vorwort Erste Grundlagen... 15

Inhalte der Grundlagen

Ulrich Kaiser Christoph Kecher C/C++ Von den Grundlagen zur professionellen Programmierung. в.. Galileo Computing

C++ - Objektorientierte Programmierung Konstruktoren und Destruktoren

Mehr Effektiv C++ programmieren

OMSI / Teil 1 / C++ Andreas Blunk. 5. April 2006, Berlin

Über den Autor 9 Widmung 10. Einführung 23

Einstieg in die Informatik mit Java

Informatik für Ingenieure

C++ für Dummies. Stephen R. Davis. Gegen den täglichen Frust mit C++ Übersetzung aus dem Amerikanischen: Judith Muhr.

in 21 Tagen Jesse Liberty Der optimale Weg - {Schritt für Schritt zum Programmierprofi

Inhaltsverzeichnis. Grundlagen und Einführung (1. Band) 1

3 VERERBUNG ALLGEMEINES

Überblick. 6. Konstruktor und Destruktor - obligatorische Elementfunktionen einer Klasse

C++ - Objektorientierte Programmierung Konstante und statische Elemente

Vokabeln. 4.1 Benutzer definierte Datentypen. Kapitel 4. Prof. Dr. Gerhard Berendt C++ oop? SS 2002 Arbeitsblatt 4

Mapra: C++ Teil 6. Felix Gruber, Sven Groß. IGPM, RWTH Aachen. 13. Juni 2017

HSR Rapperswil 2001 Markus Rigling. Programmieren: Templates Auflage

1 Die Entwicklungsumgebung...1

Effektiv Programmieren in С und C++

Grundkurs Programmieren in Java

Informatik 1 ( ) D-MAVT F2011. Klassen, Funktionen. Yves Brise Übungsstunde 9

Überblick. Überblick. Abstrakte Klassen - rein virtuelle Funktionen Beispiele

Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung)

André Willms, C++: Eine kompakte Einführung, dpunkt.verlag, ISBN D3kjd3Di38lk323nnm

Grundkurs Programmieren in Java

Grundkurs Programmieren in Java Band 1: Der Einstieg in Programmierung und Objektorientierung

Ralf Kirsch Uwe Schmitt. Programmieren inc. Eine mathematikorientierte Einführung. Mit 24 Abbildungen und 13 Tabellen. Springer

Dynamische Datentypen. Destruktor, Copy-Konstruktor, Zuweisungsoperator, Dynamischer Datentyp, Vektoren

C für Java-Programmierer

Thema heute: Vererbung und Klassenhierarchien. Abgeleitete Klassen. Vererbung von Daten und Funktionen. Virtuelle Funktionen

Vorwort. Teil I: Grundkurs 1. 1 Keine Angst vor C++! 3

Innere Klassen. Gerd Bohlender. Institut für Angewandte und Numerische Mathematik. Vorlesung: Einstieg in die Informatik mit Java

Programmierkurs C/C++

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 29

C für Java- Programmierer

Arnold Willemer C++ Der Einstieg. WlLEY

C als erste Programmiersprache

Pods und Objects (Klassen)

Inhaltsverzeichnis. Kurseinheit 1. Kurseinheit 2

... Vorwort Einstieg in die Programmierung Ablaufsteuerung... 71

Verschlüsseln eines Bildes. Visuelle Kryptographie. Verschlüsseln eines Bildes. Verschlüsseln eines Bildes

Grundkurs Programmieren in Java

Dirk Louis. c++ Das komplette Starterkit für den einfachen Einstieg in die Programmierung. 2. Auflage HANSER

Klassen. Kapitel Klassendeklaration

Programmierung mit C Zeiger

Angewandte Mathematik in OOP WS 2011/12. Abschluss-Test

Thema heute: Vererbung und Klassenhierarchien. Abgeleitete Klassen. Vererbung von Daten und Funktionen. Virtuelle Funktionen

7. Übung Informatik II - Objektorientierte Programmierung

Grundkurs Programmieren in Java

Begleittext: Einführung in das Programmieren in Java für Nichtinformatiker

Inhaltsverzeichnis. Vorwort Einleitung Ein Blick auf Entwicklungstools und erste Beispiele... 39

Implementieren von Klassen

Jürgen Wolf. C++ von A bis Z. Das umfassende Handbuch. Galileo Press

Mikrorechentechnik II. Klassen in C++

Sprechen Sie Java? Hanspeter Mössenböck. Tm\ dpunkt.verlag. Eine Einführung in das systematische Programmieren

Die abgeleiteten Klassen Kreis und Viereck erben die Elemente des Basisklasse und verfügen über zusätzliche Eigenschaften (Seitenlänge,

Transkript:

Martin Schader Stefan Kuhlins Programmieren in C+ Einführung in den Sprachstandard C++ Zweite, verbesserte und erweiterte Auflage Mit 25 Abbildungen Springer-Verlag Berlin Heidelberg New York London Paris Tokyo Hong Kong Barcelona Budapest

1 Einleitung 1 1.1 Grundbegriffe 1 1.2 Syntaxnotation 2 2 Lexikalische Konventionen 3 2.1 Ein erstes Beispiel 3 2.2 Lexikalische Elemente 4 2.3 Kommentare 4 2.4 Bezeichner 4 2.5 Schlüsselwörter 5 2.6 Operatoren 5 2.7 Header-Dateien 6 3 Vordefinierte Datentypen 9 4 Literalkonstanten 13 4.1 Ganzzahlige Konstanten 13 4.2 Zeichenkonstanten 14 4.3 Gleitpunktkonstanten 15 4.4 Zeichenketten 16 4.5 Beispiele 17 5 Variablen und Konstanten 19 5.1 Einleitung 19 5.2 Deklaration und Definition von Variablen 21 5.3 Symbolische Konstanten 23 5.4 L-Werte 24 5.5 Beispiel 24 6 Typumwandlungen und Ausdrücke 27 6.1 Standardkonversionen 27 6.2 Ausdrücke 30 6.3 Übungsaufgaben 42 7 Anweisungen 45 7.1 Einleitung 45 7.2 Ausdrucksanweisungen 46 7.3 Auswahlanweisungen 47 7.4 Wiederholungsanweisungen 50 7.5 Sprunganweisungen 53 7.6 Beispiel 54

viii 7.7 Übungsaufgaben 55 8 Abgeleitete Datentypen 57 8.1 Felder 57 8.2 Zeichenfelder 61 8.3 Zeiger 62 8.4 Zeigerarithmetik 66 8.5 Zeiger und Felder 68 8.6 Die Operatoren new und delete 72 8.7 Referenzen 77 8.8 Aufzählungstypen 80 8.9 Typnamen und typedef 81 8.10 Der abgeleitete Typ void* 83 8.11 Übungsaufgaben 85 9 Typumwandlungen 87 9.1 Standardkonversionen 87 9.2 Explizite Typumwandlungen 87 9.3 Übungsaufgaben 90 10 Geltungsbereiche und Lebensdauer 91 10.1 Geltungsbereiche 91 10.2 Die Lebensdauer von Objekten 95 10.3 Übungsaufgaben 98 11 Funktionen 101 11.1 Deklaration und Definition von Funktionen 101 11.2 Funktionsaufruf und Argumentübergabe 104 11.3 Die Rückgabe von Funktionswerten 106 11.4 Referenzargumente 107 11.5 Felder als Argumente 109 11.6 Zeiger auf Funktionen 111 11.7 Der Geltungsbereich Funktion 114 11.8 Standardargumente 114 11.9 Unspezifizierte Argumente 116 11.10 Die Funktionen maino und exito 118 11.11 inline-funktionen 119 11.12 Übungsaufgaben 120 12 Externe und interne Bindung 123 13 Überladene Funktionsnamen 131 13.1 Einleitung 131 13.2 Funktionen mit einem Argument 134 13.3 Funktionen mit mehreren Argumenten 138

ix 13.4 Zeiger auf überladene Funktionen 140 13.5 Übungsaufgaben 141 14 Klassen 143 14.1 Deklaration und Definition von Klassen 143 14.2 Klassenobjekte 145 14.3 Der Geltungsbereich Klasse 146 14.4 Die Spezifizierung von Zugriffsrechten 150 14.5 Der Zeiger this 153 14.6 Namensdeklarationen 154 14.7 Die Konstruktion von Klassenobjekten 158 14.8 Destruktoren 165 14.9 Als const deklarierte Elementfunktionen 167 14.10 f riend-funktionen und -Klassen 169 14.11 static Klassenelemente 173 14.12 inline-elementfunktionen 177 14.13 Zeiger auf Klassenelemente 179 14.14 Klassenobjekte als Klassenelemente 183 14.15 Lokale Typnamen 186 14.16 Bitfelder 187 14.17 Die Bindung von Klassennamen 189 14.18 Header-Dateien 192 14.19 Übungsaufgaben 195 15 Spezielle Konstruktoren 199 15.1 Der Copy-Konstruktor 199 15.2 Typumwandlungen mittels Konstruktor 203 15.3 Übungsaufgaben 205 16 Überladene Operatoren 207 16.1 Einleitung 207 16.2 Der Zuweisungsoperator = 208 16.3 Einstellige Operatoren 210 16.4 Zweistellige Operatoren 213 16.5 Typumwandlungen mittels Konversionsfunktion 217 16.6 Übungsaufgaben 219 17 Abgeleitete Klassen 223 17.1 Einfache Vererbung 223 17.2 Der Zugriff auf Klassenelemente 227 17.3 Standardkonversionen von Zeigern und Referenzen 231 17.4 Virtuelle Funktionen 237 17.5 Abstrakte Klassen 243 17.6 Mehrfachvererbung 246

x 17.7 Virtuelle Basisklassen 250 17.8 Spezielle Zugriffsrechte 254 17.9 Übungsaufgaben 258 18 Parametrisierte Funktionen und Klassen 263 18.1 Einleitung 263 18.2 Parametrisierte Funktionen 264 18.3 Parametrisierte Klassen 271 18.4 Übungsaufgaben 282 19 Streams 285 19.1 Einleitung 285 19.2 Formatierung 285 19.3 Ein- und Ausgabe benutzerdefinierter Datenobjekte 286 19.4 Ein- und Ausgabe mit Dateien 288 19.5 Übungsaufgaben 290 20 Ausnahmebehandlung 291 20.1 Einleitung 291 20.2 Das Auswerfen von Ausnahmen 293 20.3 Die Behandlung von Ausnahmen 295 20.4 Zugriffsrechte 299 20.5 Übungsaufgaben 299 Anhang 301 A ASCII-Tabelle 301 B Arithmetische Standardkonversionen 302 C Operatorprioritäten 303 D Syntaxregeln 304 E Die Klasse Liste 306 Literaturverzeichnis 310 Index 311