Der C++-Programmierer

Größe: px
Ab Seite anzeigen:

Download "Der C++-Programmierer"

Transkript

1 Ulrich Breymann Der C++-Programmierer C++ lernen - Professionell anwenden - Lösungen nutzen HANSER

2 Vorwort 21 Teil I: Einführung in C Es geht los! Historisches Objektorientierte Programmierung Compiler Das erste Programm Namenskonventionen Integrierte Entwicklungsumgebungen Code-Blocks Eclipse KDevelop Einfache Datentypen und Operatoren Ausdruck Ganze Zahlen Reelle Zahlen Konstante Zeichen Logischer Datentyp bool Referenzen Regeln zum Bilden von Ausdrücken 58

3 Inhalt Standard-Typumwandlungen Gültigkeitsbereich und Sichtbarkeit Namespace std Kontrollstrukturen Anweisungen : Sequenz (Reihung) Auswahl (Selektion, Verzweigung) Fallunterscheidungen mit switch Wiederholungen Kontrolle mit break und continue Benutzerdefinierte und zusammengesetzte Datentypen Aufzählungstypen Arrays: Der C++-Standardryp vector Zeichenketten: Der C++-Standardtyp string Strukturierte Datentypen 89 2 Einfache Ein- und Ausgabe Standardein- und -ausgäbe Ein- und Ausgabe mit Dateien 96 3 Programmstrukturierung Funktionen Aufbau und Prototypen Gültigkeitsbereiche und Sichtbarkeit in Funktionen Schnittstellen zum Datentransfer Übergabe per Wert Übergabe per Referenz Gefahren bei der Rückgabe von Referenzen Vorgegebene Parameterwerte und variable Parameterzahl Überladen von Funktionen Funktion main() Beispiel Taschenrechnersimulation Spezifikation von Funktionen Modulare Programmgestaltung Steuerung der Übersetzung nur mit #include Einbinden vorübersetzter Programmteile Dateiübergreifende Gültigkeit und Sichtbarkeit Übersetzungseinheit, Deklaration, Definition 127

4 Inhalt Compilerdirektiven und Makros Funktions-Templates Spezialisierung von Templates Einbinden von Templates inline-funktionen Namensräume C++-Header Einbinden von C-Funktionen Objektorientierung Abstrakte Datentypen Klassen und Objekte inline-elementfunktionen Initialisierung und Konstruktoren Standardkonstruktor Allgemeine Konstruktoren Kopierkonstruktor Typumwandlungskonstruktor Beispiel: Rationale Zahlen Aufgabenstellung Entwurf Implementation const-objekte und Methoden Destruktoren Wie kommt man zu Klassen und Objekten? Ein Beispiel Einige Analyse-Überlegungen Formulierung des Szenarios in C Gegenseitige Abhängigkeit von Klassen Delegierender Konstruktor Intermezzo: Zeiger Zeiger und Adressen C-Arrays C-Arrays und sizeof Indexoperator bei C-Arrays Initialisierung von C-Arrays Zeigerarithmetik C-Zeichenketten 191

5 Inhalt 5.4 Dynamische Datenobjekte Freigeben dynamischer Objekte Zeiger und Funktionen Parameterübergabe mit Zeigern Parameter des main-programms Gefahren bei der Rückgabe von Zeigern Mehrdimensionale C-Arrays Statische mehrdimensionale C-Arrays Dynamisch erzeugte mehrdimensionale Arrays Klasse für dynamisches zweidimensionales Array Binäre Ein-/Ausgabe Zeiger auf Funktionen this-zeiger Komplexe Deklarationen lesen Standard-Typumwandlungen für Zeiger Zeiger auf Elementfunktionen und -daten Zeiger auf Elementfunktionen Zeiger auf Elementdaten Objektorientierung Eine String-Klasse Optimierung der Klasse MeinString friend-funktionen Klassenspezifische Daten und Funktionen Klassenspezifische Konstante Klassen-Templates Ein Stack-Template Stack mit statisch festgelegter Größe Template-Metaprogrammierung Variadic Templates: Templates mit variabler Parameterzahl Vererbung Vererbung und Initialisierung Zugriffsschutz Typbeziehung zwischen Ober- und Unterklasse Code-Wiederverwendung Überschreiben von Funktionen in abgeleiteten Klassen Polymorphismus 266

6 Inhalt Virtuelle Funktionen Abstrakte Klassen Virtueller Destruktor Probleme der Modellierung mit Vererbung Mehrfachvererbung Namenskonflikte Virtuelle Basisklassen Standard-Typumwandlungsoperatoren Typinformationen zur Laufzeit Using-Deklaration für Klassen Private- und Protected-Vererbung Fehlerbehandlung Ausnahmebehandlung Exception-Spezifikation in Deklarationen Exception-Hierarchie in C Besondere Fehlerbehandlungsfunktionen Erkennen logischer Fehler Speicherbeschaffung mit new Exception-Sicherheit Überladen von Operatoren Rationale Zahlen noch einmal Arithmetische Operatoren Ausgabeoperator « Eine Klasse für Vektoren Index-Operator [ ] Zuweisungsoperator = Zuweisungsoperator und Vererbung Mathematische Vektoren Multiplikationsoperator Inkrement-Operator Typumwandlungsoperator Smart Pointer: Operatoren -> und * Smart Pointer und die C++-Standardbibliothek Objekt als Funktion new und delete überladen Speichermanagement mit malloc und free 349

7 10 Inhalt Unterscheidung zwischen Heap- und Stack-Objekten Fehlende delete-anweisung entdecken Eigene Speicherverwaltung Empfehlungen im Umgang mit new und delete Mehrdimensionale Matrizen Zweidimensionale Matrix als Vektor von Vektoren Dreidimensionale Matrix Dateien und Ströme Ausgabe Formatierung der Ausgabe Eingabe Manipulatoren Eigene Manipulatoren Fehlerbehandlung Exception ios::failure Typumwandlung von Dateiobjekten nach bool Arbeit mit Dateien Positionierung in Dateien Lesen und Schreiben in derselben Datei Umleitung auf Strings Ergänzungen Einführung in die Standard Template Library (STL) Das Konzept: Container, Iteratoren, Algorithmen Iteratoren im Detail Beispiel verkettete Liste Reguläre Ausdrücke Elemente regulärer Ausdrücke Greedy oder lazy? Interaktive Auswertung Auszug des regex-apis Anwendungen Threads Die Klasse thread Synchronisation 416

8 Inhalt Thread-Group Thread-Steuerung: pausieren, fortsetzen, beenden Interrupt Warten auf Ereignisse Reader/Writer-Problem Wenn Threads verhungern Reader/Writer-Varianten Thread-Sicherheit 438 Teil II: Bausteine komplexer Anwendungen Grafische Benutzungsschnittstellen Ereignisgesteuerte Programmierung GUI-Programmierung mit Qt Meta-Objektsystem Der Programmablauf Speicher sparen und lokal Daten sichern Signale, Slots und Widgets Dialog Qt oder Boost? Threads Verzeichnisbaum durchwandern Internet-Anbindung Protokolle Adressen Socket Bidirektionale Kommunikation UDP-Sockets Atomuhr mit UDP abfragen HTTP Verbindung mit GET Verbindung mit POST Mini-Webserver Datenbankanbindunq C++-Interface Anwendungsbeispiel 498

9 12 Inhalt Teil III: Praktische Methoden und Werkzeuge der Softwareentwicklung Abläufe automatisieren mit make Quellen Wirkungsweise Variablen und Muster Universelles Makefile für einfache Projekte Unit-Test Werkzeuge Test Driven Development Boost Unit Test Framework Testaufbau Beispiel: Testgetriebene Entwicklung einer Operatorfunktion Fixture Testprotokoll und Log-Level Prüf-Makros Kommandozeilen-Optionen Werkzeuge zur Verwaltung von Projekten Dokumentation und Strukturanalyse mit doxygen Strukturanalyse Versionskontrolle Einrichtung des Servers Exemplarische Benutzung Projektverwaltung Projektmanagement Wiki für Software-Entwicklungsprojekte 543 Teil IV: Das C++-Rezeptbuch: Tipps und Lösungen für typische Aufgaben Sichere Programmentwicklung Regeln zum Design von Methoden Defensive Programmierung double- und float-werte richtig vergleichen const verwenden Anweisungen nach for/if/while einklammern int und unsigned nicht mischen 552

10 Inhalt Postfix++ mit Präfix++ implementieren Ein Destruktor darf keine Exception werfen Typumwandlungsoperatoren vermeiden explicit-konstruktoren bevorzugen Leere Standardkonstruktoren vermeiden Kopieren und Zuweisung verbieten Vererbung verbieten Defensiv Objekte löschen Exception-sichere Beschaffung von Ressourcen Sichere Verwendung von shared_ptr shared_ptr für Arrays korrekt verwenden Exception-sichere Funktion Exception-sicherer Konstruktor Exception-sichere Zuweisung Aussagefähige Fehlermeldung ohne neuen String erzeugen Empfehlungen zur Thread-Programmierung Warten auf die Freigabe von Ressourcen Deadlock-Vermeidung notify_all oder notify_one? Performance mit Threads verbessern? Von der UML nach C Vererbung Interface anbieten und nutzen Assoziation Aggregation Komposition Performance, Wert- und Referenzsemantik Performanceproblem Wertsemantik Optimierung durch Referenzsemantik für R-Werte Ein effizienter binärer Plusoperator Effektive Programmerzeugung Automatische Ermittlung von Abhängigkeiten Getrennte Verzeichnisse: src, obj, bin Makefile für Verzeichnisbäume Rekursive Make-Aufrufe 590

11 14 Inhalt Ein Makefile für alles Automatische Erzeugung von Makefiles Makefile für rekursive Aufrufe erzeugen Erzeugen von Bibliotheken Statische Bibliotheksmodule Dynamische Bibliotheksmodule GNU Autotools CMake Code Bloat bei der Instanziierung von Templates vermeiden extern-template Aufspaltung in Schnittstelle und Implementation export-template Algorithmen für verschiedene Aufgaben Algorithmen mit Strings String spürten String in Zahl umwandeln Zahl in String umwandeln Strings sprachlich richtig sortieren Umwandlung in Klein- bzw. Großschreibung Strings sprachlich richtig vergleichen Von der Groß-/Kleinschreibung unabhängiger Zeichenvergleich Von der Groß-/Kleinschreibung unabhängige Suche Textverarbeitung Datei durchsuchen Ersetzungen in einer Datei Code-Formatierer Lines of Code (LOC) ermitteln Zeilen, Wörter und Zeichen einer Datei zählen CSV-Datei lesen Kreuzreferenzliste Operationen auf Folgen Container anzeigen Folge mit gleichen Werten initialisieren Folge mit Werten eines Generators initialisieren Folge mit fortlaufenden Werten initialisieren Summe und Produkt 632

12 Inhalt Mittelwert und Standardabweichung Skalarprodukt Folge der Teilsummen oder -produkte Folge der Differenzen Minimum und Maximum Elemente rotieren Elemente verwürfein Dubletten entfernen Reihenfolge umdrehen Anzahl der Elemente, die einer Bedingung genügen Gilt X für alle, keins oder wenigstens ein Element einer Folge? Permutationen Lexikografischer Vergleich Sortieren und Verwandtes Partitionieren Sortieren Stabiles Sortieren Partielles Sortieren Das n.-größte oder n.-kleinste Element finden Verschmelzen (merge) Suchen und Finden Element finden Element einer Menge in der Folge finden Teilfolge finden Bestimmte benachbarte Elemente finden Bestimmte aufeinanderfolgende Werte finden Binäre Suche Mengenoperationen auf sortierten Strukturen Teilmengenrelation Vereinigung Schnittmenge Differenz Symmetrische Differenz Heap-Algorithmen pop_heap pushjieap makejieap 674

13 16 Inhalt sortjieap isjieap Vergleich von Containern auch ungleichen Typs Unterschiedliche Elemente finden Prüfung auf gleiche Inhalte Rechnen mit komplexen Zahlen: Der C++-Standardtyp complex Schnelle zweidimensionale Matrix mit zusammenhängendem Speicher Optimierung mathematischer Array-Operationen Vermischtes Erkennung eines Datums Erkennung einer IP-Adresse Erzeugen von Zufallszahlen for_each Auf jedem Element eine Funktion ausführen Verschiedene Möglichkeiten, Container-Bereiche zu kopieren Vertauschen von Elementen, Bereichen und Containern Elemente transformieren Ersetzen und Varianten Elementeherausfiltern Minimum und Maximum Grenzwerte von Zahltypen Ein- und Ausgabe Datei- und Verzeichnisoperationen Datei oder Verzeichnis löschen Datei oder Verzeichnis umbenennen Verzeichnis anlegen Verzeichnis anzeigen Verzeichnisbaum anzeigen Tabelle formatiert ausgeben Formatierte Daten lesen Eingabe benutzerdefinierter Typen Array als Block lesen oder schreiben 713 Teil V: Die C++-Standardbibliothek Aufbau und Übersicht Auslassungen 719

14 Inhalt Beispiele des Buchs und die C++-Standardbibliothek Hilfsfunktionen und -klassen Relationale Operatoren Unterstützung der Referenzsemantik für R-Werte Paare Tupel Funktionsobjekte Arithmetische, vergleichende und logische Operationen Funktionsobjekte zum Negieren logischer Prädikate Binden von Argumentwerten Zeiger auf Funktionen in Objekte umwandeln Templates für rationale Zahlen Zeit und Dauer Hüllklasse für Referenzen Container Gemeinsame Eigenschaften Initialisierungslisten Konstruktion an Ort und Stelle Reversible Container Sequenzen vector vector<bool> list deque Stack queue priority_queue array Sortierte assoziative Container map multimap set multiset Hash-Container unordered_map ; unordered_multimap 771

15 18 Inhalt unordered_set unordered_multiset bitset Iteratoren Iterator-Kategorien Anwendung von Traits distance() und advancef) Reverse-Iteratoren Insert-Iteratoren Stream-Iteratoren Algorithmen Algorithmen mit Prädikat Algorithmen mit binärem Prädikat Übersicht Nationale Besonderheiten Sprachumgebungen festlegen und ändern Die locale-funktionen Zeichensätze und -Codierung Zeichenklassifizierung und -Umwandlung Kategorien collate ctype numeric monetary time messages Konstruktion eigener Facetten String Speichermanagement Smart Pointer unique_ptr, shared_ptr, weak_ptr new mit vorgegebenem Speicherort Hilfsfunktionen 829

16 Inhalt Optimierte numerische Arrays (valarray) Konstruktoren Elementfunktionen Binäre Valarray-Operatoren Mathematische Funktionen slice und slice_array gslice und gslice_array mask_array indirect_array C-Header <cassert> <cctype> <cerrno> <cmath> <cstdarg> <cstddef> <cstdio> <cstdlib> <cstring> <ctime> 855 A Anhang 857 A. 1 Programmierhinweise 857 A.2 C++-Schlüsselwörter 860 A.3 ASCII-Tabelle 861 A.4 Rangfolge der Operatoren 862 A.5 Compilerbefehle 863 A.6 Änderungen des C++-Standards 864 A.6.1 Änderungen/Erweiterungen der C++-Sprache 864 A.6.2 Änderungen/Erweiterungen der C++-Standardbibliothek 871 A.7 Lösungen zu den Übungsaufgaben 872 A.8 Installation der DVD-Software für Windows 917 A.8.1 Installation des Compilers und einiger Bibliotheken 917 A.8.2 Bei Verzicht auf die automatische Installation 918 A.8.3 Codeblocks einrichten 919 A.8.4 Integration von Qt in ein Code::Blocks-Projekt 921 A.9 Installation der DVD-Software für Linux 922

17 20 Inhalt A.9.1 Installation des Compilers 922 A.9.2 Installation von Boost 923 A.9.3 Installation von Code::Blocks 923 A.9.4 Code::Blocks einrichten 924 A.9.5 Beispieldateien entpacken 924 A.9.6 Installation von Qt4 925 A.9.7 Integration von Qt in ein Code::Blocks-Projekt 926 Literaturverzeichnis 927 Glossar 931 Register 941

Vorwort 21. Teil I: Einführung in C++ 25

Vorwort 21. Teil I: Einführung in C++ 25 Vorwort 21 Teil I: Einführung in C++ 25 1 Es geht los! 27 1.1 Historisches 27 1.2 Objektorientierte Programmierung 28 1.3 Compiler 31 1.4 Das erste Programm 31 1.4.1 Namenskonventionen 36 1.5 Integrierte

Mehr

// C++ LERNEN // PROFESSIONELL ANWENDEN // LÖSUNGEN NUTZEN // DER PROGRAMMIERER C++

// C++ LERNEN // PROFESSIONELL ANWENDEN // LÖSUNGEN NUTZEN // DER PROGRAMMIERER C++ // C++ LERNEN // PROFESSIONELL ANWENDEN // LÖSUNGEN NUTZEN // ulrich BREYMANN DER PROGRAMMIERER C++ Breymann Der C++-Programmierer vbleiben Sie einfach auf dem Laufenden: www.hanser.de/newsletter Sofort

Mehr

C++ Einführung und professionelle Programmierung

C++ Einführung und professionelle Programmierung Ulrich Breymann C++ Einführung und professionelle Programmierung ISBN-10: 3-446-41023-6 ISBN-13: 978-3-446-41023-7 Inhaltsverzeichnis Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-41023-7

Mehr

C++ DER PROGRAMMIERER // C++ LERNEN // PROFESSIONELL ANWENDEN // LÖSUNGEN NUTZEN AKTUEL ZU C++14. ulrich BREYMANN

C++ DER PROGRAMMIERER // C++ LERNEN // PROFESSIONELL ANWENDEN // LÖSUNGEN NUTZEN AKTUEL ZU C++14. ulrich BREYMANN ulrich BREYMANN L AKTUEL ZU 4. Auflage C++14 C++ DER PROGRAMMIERER // C++ LERNEN // PROFESSIONELL ANWENDEN // LÖSUNGEN NUTZEN Entwicklungsumgebung, Compiler, alle Beispiele und mehr auf www.cppbuch.de Inklusive»C++-Rezeptbuch«mit

Mehr

C++ DER PROGRAMMIERER C++ LERNEN PROFESSIONELL ANWENDEN LÖSUNGEN NUTZEN. EXTRA: Mit kostenlosem E-Book. ulrich BREYMANN. 2.

C++ DER PROGRAMMIERER C++ LERNEN PROFESSIONELL ANWENDEN LÖSUNGEN NUTZEN. EXTRA: Mit kostenlosem E-Book. ulrich BREYMANN. 2. 2. Auflage ulrich BREYMANN C++ DER PROGRAMMIERER C++ LERNEN PROFESSIONELL ANWENDEN LÖSUNGEN NUTZEN EXTRA: Mit kostenlosem E-Book Auf DVD: Entwicklungsumgebung, Compiler, weitere Tools, alle Beispiele des

Mehr

C++ DER PROGRAMMIERER C++ LERNEN PROFESSIONELL ANWENDEN LÖSUNGEN NUTZEN. EXTRA: Mit kostenlosem E-Book. ulrich BREYMANN. 2.

C++ DER PROGRAMMIERER C++ LERNEN PROFESSIONELL ANWENDEN LÖSUNGEN NUTZEN. EXTRA: Mit kostenlosem E-Book. ulrich BREYMANN. 2. 2. Auflage ulrich BREYMANN C++ DER PROGRAMMIERER C++ LERNEN PROFESSIONELL ANWENDEN LÖSUNGEN NUTZEN EXTRA: Mit kostenlosem E-Book Auf DVD: Entwicklungsumgebung, Compiler, weitere Tools, alle Beispiele des

Mehr

C++ DER PROGRAMMIERER C++ 11 // C++ LERNEN // PROFESSIONELL ANWENDEN // LÖSUNGEN NUTZEN AKTUEL ZU. 3. Auflage

C++ DER PROGRAMMIERER C++ 11 // C++ LERNEN // PROFESSIONELL ANWENDEN // LÖSUNGEN NUTZEN AKTUEL ZU. 3. Auflage ulrich BREYMANN L AKTUEL ZU 3. Auflage C++ 11 C++ DER PROGRAMMIERER // C++ LERNEN // PROFESSIONELL ANWENDEN // LÖSUNGEN NUTZEN Entwicklungsumgebung, Compiler, alle Beispiele und mehr auf www.cppbuch.de

Mehr

C++ DER PROGRAMMIERER C++14 // C++ LERNEN // PROFESSIONELL ANWENDEN // LÖSUNGEN NUTZEN AKTUEL ZU. 4. Auflage

C++ DER PROGRAMMIERER C++14 // C++ LERNEN // PROFESSIONELL ANWENDEN // LÖSUNGEN NUTZEN AKTUEL ZU. 4. Auflage ulrich BREYMANN L AKTUEL ZU 4. Auflage C++14 C++ DER PROGRAMMIERER // C++ LERNEN // PROFESSIONELL ANWENDEN // LÖSUNGEN NUTZEN Entwicklungsumgebung, Compiler, alle Beispiele und mehr auf www.cppbuch.de

Mehr

C++ DER PROGRAMMIERER C++ LERNEN PROFESSIONELL ANWENDEN LÖSUNGEN NUTZEN. EXTRA: Mit kostenlosem E-Book. ulrich BREYMANN. 2.

C++ DER PROGRAMMIERER C++ LERNEN PROFESSIONELL ANWENDEN LÖSUNGEN NUTZEN. EXTRA: Mit kostenlosem E-Book. ulrich BREYMANN. 2. 2. Auflage ulrich BREYMANN C++ DER PROGRAMMIERER C++ LERNEN PROFESSIONELL ANWENDEN LÖSUNGEN NUTZEN EXTRA: Mit kostenlosem E-Book Auf DVD: Entwicklungsumgebung, Compiler, weitere Tools, alle Beispiele des

Mehr

Vorwort... 25. Teil I: Einführung in C++... 29

Vorwort... 25. Teil I: Einführung in C++... 29 Inhalt Vorwort... 25 Teil I: Einführung in C++... 29 1 Es geht los!... 31 1.1 Historisches... 31 1.2 Objektorientierte Programmierung... 32 1.3 Compiler... 34 1.4 Das erste Programm... 35 1.4.1 Namenskonventionen...

Mehr

Objektorientiert in C++

Objektorientiert in C++ Dirk Louis Objektorientiert in C++ Einstieg und professioneller Einsatz intwickier.pres: Vorwort 11 1 Schnellkurs C++ 13 1.1 ANSI-C++ und die Compiler 13 Compiler und Programmerstellung 13 ANSI und die

Mehr

Inhaltsverzeichnis. Vorwort

Inhaltsverzeichnis. Vorwort Inhaltsverzeichnis Vorwort XI 1 C/C++-Grundlagen 1 1.1 Einführung................................ 1 1.1.1 Entwicklungsgeschichte: Von K&R-C nach C++........ 1 1.1.2 Beispielprogramme.......................

Mehr

Vorwort. Ulrich Breymann. Der C++-Programmierer. C++ lernen - Professionell anwenden - Lösungen nutzen ISBN:

Vorwort. Ulrich Breymann. Der C++-Programmierer. C++ lernen - Professionell anwenden - Lösungen nutzen ISBN: Vorwort Ulrich Breymann Der C++-Programmierer C++ lernen - Professionell anwenden - Lösungen nutzen ISBN: 978-3-446-42691-7 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-42691-7

Mehr

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

Peter Prinz Ulla Kirch-Prinz C+ + Lernen und professionell anwenden. ffl mitp Peter Prinz Ulla Kirch-Prinz C+ + Lernen und professionell anwenden ffl mitp Inhaltsverzeichnis Einleitung 19 1 Grundlagen 21 Entwicklung und Eigenschaften von C + + 22 Objektorientierte Programmierung

Mehr

Vorwort. Der C++-Programmierer (3. Auflage)

Vorwort. Der C++-Programmierer (3. Auflage) Vorwort zu Der C++-Programmierer (3. Auflage) von Ulrich Breymann ISBN (Buch): 978-3-446-43894-1 ISBN (E-Book): 978-3-446-43953-5 Weitere Informationen und Bestellungen unter http://www.hanser-fachbuch.de/978-3-446-43894-1

Mehr

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

... Vorwort Einstieg in die Programmierung Ablaufsteuerung... 71 ... Vorwort... 13 1... Einstieg in die Programmierung... 15 1.1... Programmieren... 15 1.1.1... Start eines Programms... 15 1.1.2... Eintippen, übersetzen, ausführen... 16 1.1.3... Der Algorithmus... 18

Mehr

Arnold Willemer. Einstieg in C++ Galileo Press

Arnold Willemer. Einstieg in C++ Galileo Press Arnold Willemer Einstieg in C++ Galileo Press Vorwort 13 1.1 Programmieren 15 1.1.1 Start eines Programms 15 1.1.2 Eintippen, übersetzen, ausführen 16 1.1.3 Der Algorithmus 18 1.1.4 Die Sprache C++ 19

Mehr

Arnold Willemer. Einstieg in C++ Galileo Press

Arnold Willemer. Einstieg in C++ Galileo Press Arnold Willemer Einstieg in C++ Galileo Press Vorwort 13 1.1 Programmieren 17 1.1.1 Start eines Programms 17 1.1.2 Eintippen, übersetzen, ausführen 18 1.1.3 Der Algorithmus 20 1.1.4 Die Sprache C++ 21

Mehr

Arnold Willemer C++ Der Einstieg. WlLEY

Arnold Willemer C++ Der Einstieg. WlLEY Arnold Willemer C++ Der Einstieg WlLEY altsverzeichnis Vorwort 13 1 Einstieg in die Programmierung 15 1.1 Programmieren 15 1.1.1 Start eines Programms 16 1.1.2 Eintippen, übersetzen, ausführen 17 1.1.3

Mehr

C++ DER PROGRAMMIERER C++14 // C++ LERNEN // PROFESSIONELL ANWENDEN // LÖSUNGEN NUTZEN AKTUEL ZU. 4. Auflage

C++ DER PROGRAMMIERER C++14 // C++ LERNEN // PROFESSIONELL ANWENDEN // LÖSUNGEN NUTZEN AKTUEL ZU. 4. Auflage ulrich BREYMANN L AKTUEL ZU 4. Auflage C++14 C++ DER PROGRAMMIERER // C++ LERNEN // PROFESSIONELL ANWENDEN // LÖSUNGEN NUTZEN Entwicklungsumgebung, Compiler, alle Beispiele und mehr auf www.cppbuch.de

Mehr

Kapitel 2 Elementare Datentypen, Konstanten und Variablen Elementare Datentypen

Kapitel 2 Elementare Datentypen, Konstanten und Variablen Elementare Datentypen Inhaltsverzeichnis Einleitung Kapitel 1 Grundlagen Entwicklung und Eigenschaften von C++ Objektorientierte Programmierung Erstellen eines C++- Programms Ein erstes C++-Programm Struktur einfacher C++-Programme

Mehr

Objektorientiertes Programmieren in C++

Objektorientiertes Programmieren in C++ Nicolai Josuttis Objektorientiertes Programmieren in C++ Von der Klasse zur Klassenbibliothek D-64289 Darmstadt ADDISON-WESLEY PUBLISHING COMPANY Bonn Paris Reading, Massachusetts Menlo Park, California

Mehr

Eine praktische Einführung in die Programmierung mit der Programmiersprache C

Eine praktische Einführung in die Programmierung mit der Programmiersprache C Eine praktische Einführung in die Programmierung mit der Programmiersprache C www.c-howto.de C-HowTo www.c-howto.de Inhaltsverzeichnis 1 Einführung.. 10 1:1 Wozu Programmieren? 10 1.2 Was ist ein Programm?

Mehr

C++-Entwicklung mit Linux

C++-Entwicklung mit Linux C++-Entwicklung mit Linux Eine Einführung in die Sprache und die wichtigsten Werkzeuge von GCC und XEmacs bis Eclipse Thomas Wieland [Druckvorlage vom 10. August 2004] xiii Inhaltsverzeichnis 1 Programmieren

Mehr

C für Java-Programmierer

C für Java-Programmierer Carsten Vogt C für Java-Programmierer ISBN-10: 3-446-40797-9 ISBN-13: 978-3-446-40797-8 Inhaltsverzeichnis Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-40797-8 sowie im

Mehr

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

Ulla Kirch Peter Prinz C+ + Lernen und professionell anwenden. mitp Ulla Kirch Peter Prinz C+ + Lernen und professionell anwenden mitp Inhaltsverzeichnis Einleitung 19 Grundlagen 21 Entwicklung und Eigenschaften von C++ 22 Objektorientierte Programmierung 24 Erstellen

Mehr

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

Inhalt. 1 Einstieg in die Welt von C Erste Schritte in C 31. Vorwort... 15 Vorwort... 15 1 Einstieg in die Welt von C 17 1.1 Die Sprache C... 17 1.2 Die C-Standardbibliothek... 18 1.3 Die nötigen Werkzeuge für C... 21 1.4 Übersetzen mit der Entwicklungsumgebung... 23 1.5 Übersetzen

Mehr

Inhaltsverzeichnis. Vorwort.11

Inhaltsverzeichnis. Vorwort.11 Inhaltsverzeichnis Vorwort.11 Kapitel 1 Einführung in die C-Programmierung 17 1.1 Ein erstes C-Programm 17 1.1.1 Analyse des Zinseszins-Programms 17 1.2 Compilieren und Ausführen eines Programms 24 1.3

Mehr

C++ eine Einführung. ulrich BREYMANN. Für Windows, Linux & Mac. C++ downloaded from by

C++ eine Einführung. ulrich BREYMANN. Für Windows, Linux & Mac. C++ downloaded from  by C++ C++ C+ ulrich BREYMANN C++ eine Einführung Entwicklungsumgebung, Compiler, alle Beispiele und mehr auf www.cppbuch2.de Für Windows, Linux & Mac Breymann C++ eine Einführung Bleiben Sie auf dem Laufenden!

Mehr

Werner Achte rt DATA BECKER

Werner Achte rt DATA BECKER Werner Achte rt. DATA BECKER Inhaltsverzeichnis 1. Einführung 21 1.1 Entwurf von Anwendungssystemen 23 1.2 Entwicklung eines Programms 25 1.3 Objektorientierte Programmierung 29 1.4 Darstellung objektorientierter

Mehr

Einführung in die STL

Einführung in die STL Einführung in die STL Fimberger Lucia lfimberg@cosy.sbg.ac.at Nidetzky Marion mnidetzk@cosy.sbg.ac.at Was ist die STL? Abkürzung für Standard Template Library Eine generische Bibliothek Ist kaum objektorientiert,

Mehr

Inhaltsverzeichnis 1 Der objektorientierte Ansatz 2 Elementare Objekte und Ausdrücke

Inhaltsverzeichnis 1 Der objektorientierte Ansatz 2 Elementare Objekte und Ausdrücke Inhaltsverzeichnis 1 Der objektorientierte Ansatz... 1 1.1 Ein einführendes Beispiel...2 1.1.1 Aktive Objekte...4 1.1.2 Klassifikation...4 1.1.3 Datenkapselung...6 1.2 OOP im Überblick...6 1.3 Programmaufbau...7

Mehr

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

Berichte aus der Informatik. Dieter Pawelczak. Start in die C-Programmierung Berichte aus der Informatik Dieter Pawelczak Start in die C-Programmierung Shaker Verlag Aachen 2012 Inhaltsverzeichnis Inhaltsverzeichnis i 1 Einleitung 1 1.1 Umfeld und Aufbau des Buches 1 Die Programmiersprache

Mehr

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

TEIL I: OBJEKTORIENTIERUNG UND GRUNDKURS JAVA GRUNDLAGEN DER PROGRAMMIERUNG... 4 Inhaltsverzeichnis TEIL I: OBJEKTORIENTIERUNG UND GRUNDKURS JAVA... 1 1 GRUNDLAGEN DER PROGRAMMIERUNG... 4 1.1 Das erste Java-Programm... 4 1.2 Programme und ihre Abläufe... 6 1.3 Entwurf mit Nassi-Shneiderman-Diagrammen...

Mehr

Die С ++-Programmiersprache

Die С ++-Programmiersprache Bjarne Stroustrup Die С ++-Programmiersprache 3., aktualisierte und erweiterte Auflage Deutsche Übersetzung von Nicolai Josuttis und Achim Lörke raddison-wesley An imprint of Addison Wesley Longman, Inc.

Mehr

1 Einige Grundbegriffe Einführung in die Programmierung Ausgewählte Sprachelemente von C Arithmetik...

1 Einige Grundbegriffe Einführung in die Programmierung Ausgewählte Sprachelemente von C Arithmetik... Auf einen Blick Auf einen Blick 1 Einige Grundbegriffe... 21 2 Einführung in die Programmierung... 35 3 Ausgewählte Sprachelemente von C... 45 4 Arithmetik... 83 5 Aussagenlogik... 107 6 Elementare Datentypen

Mehr

Inhaltsverzeichnis. Kurseinheit 1. Kurseinheit 2

Inhaltsverzeichnis. Kurseinheit 1. Kurseinheit 2 iii Inhaltsverzeichnis Kurseinheit 1 1 Von der Aufgabenstellung zum Programm... 1 1.1 Motivation... 1 1.2 Softwareentwicklung... 2 1.3 EXKURS: Unified Modeling Language (UML)... 4 2 Anforderungsanalyse...

Mehr

magnum C++ WALTER SAUMWEBER kompakt komplett kompetent

magnum C++ WALTER SAUMWEBER kompakt komplett kompetent magnum C++ WALTER SAUMWEBER kompakt komplett kompetent Quickview... 5 Liebe Leserin, lieber Leser... 13 Teil 1 Grundlagen... 15 1 Was ist Programmieren?... 17 1.1 Was ist eigentlich ein Computerprogramm?...

Mehr

Das erwartet dich in diesem Buch 8. Kapitel 1 Aufbruch ins Programmierabenteuer 14

Das erwartet dich in diesem Buch 8. Kapitel 1 Aufbruch ins Programmierabenteuer 14 Inhaltsverzeichnis Das erwartet dich in diesem Buch 8 Kapitel 1 Aufbruch ins Programmierabenteuer 14 Das Schlimmste vorab: die binäre Logik 15 So hoch entwickelt und doch so primitiv: der Prozessor 17

Mehr

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

Ralf Kirsch Uwe Schmitt. Programmieren inc. Eine mathematikorientierte Einführung. Mit 24 Abbildungen und 13 Tabellen. Springer Ralf Kirsch Uwe Schmitt Programmieren inc Eine mathematikorientierte Einführung Mit 24 Abbildungen und 13 Tabellen Springer Inhaltsverzeichnis Eine Einleitung in Frage und Antwort V 1 Vorbereitungen 1

Mehr

Programmierung in C/C++

Programmierung in C/C++ Programmierung in C/C++ Mit einer grundlegenden Einführung in die Objektorientierung Univ.-Prof. Hon.-Prof. Dr. Dieter Roller Mit 134 Bildern Kontakt & Studium Band 682 Herausgeber: Prof. Dr. Birgit Baum

Mehr

Vorwort. Ulrich Breymann. Der C++-Programmierer. C++ lernen - Professionell anwenden - Lösungen nutzen ISBN: 978-3-446-41644-4

Vorwort. Ulrich Breymann. Der C++-Programmierer. C++ lernen - Professionell anwenden - Lösungen nutzen ISBN: 978-3-446-41644-4 Vorwort Ulrich Breymann Der C++-Programmierer C++ lernen - Professionell anwenden - Lösungen nutzen ISBN: 978-3-446-41644-4 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-41644-4

Mehr

Programmierkurs C++ Templates & STL (1/2)

Programmierkurs C++ Templates & STL (1/2) Programmierkurs C++ Templates & STL (1/2) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck https://www.itm.uni-luebeck.de/people/fischer #2 Templates Die wichtigsten objekt-orientierten

Mehr

C++ Teil 5. Sven Groß. 13. Mai Sven Groß (IGPM, RWTH Aachen) C++ Teil Mai / 18

C++ Teil 5. Sven Groß. 13. Mai Sven Groß (IGPM, RWTH Aachen) C++ Teil Mai / 18 C++ Teil 5 Sven Groß 13. Mai 2016 Sven Groß (IGPM, RWTH Aachen) C++ Teil 5 13. Mai 2016 1 / 18 Themen der letzten Vorlesung Funktionen Funktionsüberladung, Signatur Rekursion const-deklaration Referenzen

Mehr

C++ Teil 12. Sven Groß. 18. Jan Sven Groß (IGPM, RWTH Aachen) C++ Teil Jan / 11

C++ Teil 12. Sven Groß. 18. Jan Sven Groß (IGPM, RWTH Aachen) C++ Teil Jan / 11 C++ Teil 12 Sven Groß 18. Jan 2016 Sven Groß (IGPM, RWTH Aachen) C++ Teil 12 18. Jan 2016 1 / 11 Themen der letzten Vorlesung Wiederholung aller bisherigen Themen: Datentypen und Variablen Operatoren Kontrollstrukturen

Mehr

Objektorientierte Programmierung mit C++ SS 2007

Objektorientierte Programmierung mit C++ SS 2007 Objektorientierte Programmierung mit C++ SS 2007 Andreas F. Borchert Universität Ulm 5. Juni 2007 Polymorphismus #include Function.h class Function { public: virtual ~Function() {}; virtual std::string

Mehr

Programmieren in Lua

Programmieren in Lua Roberto lerusalimschy Programmieren in Lua 3. Auflage Open Source Press Inhaltsverzeichnis Vorwort 13 I Die Sprache 21 1 Einführung 23 1.1 Chunks 24 1.2 Einige lexikalische Konventionen 26 1.3 Globale

Mehr

Inhaltsverzeichnis. Kapitel i: Schnelleinstieg 13. Kapitel 2: Was sind Programme? 17. Kapitel 3: Wie erstellt man eigene Programme?

Inhaltsverzeichnis. Kapitel i: Schnelleinstieg 13. Kapitel 2: Was sind Programme? 17. Kapitel 3: Wie erstellt man eigene Programme? Liebe Leserin, lieber Leser 10 Kapitel i: Schnelleinstieg 13 Kapitel 2: Was sind Programme? 17 Was ist ein Programm? 18 Sprechen Sie Computer? 18 Von der Idee zum Programm 19 Von Windows, Fenstern und

Mehr

Effektiv Programmieren in С und C++

Effektiv Programmieren in С und C++ Dietmar Herrmann Effektiv Programmieren in С und C++ Eine Einführung mit Beispielen aus Mathematik, Naturwissenschaft und Technik 3., vollständig überarbeitete und erweiterte Auflage 3 vieweg flffm \;i

Mehr

Grundkurs Software- Entwicklung mit C++

Grundkurs Software- Entwicklung mit C++ Dietrich May Grundkurs Software- Entwicklung mit C++ Praxisorientierte Einführung mit Beispielen und Aufgaben- Exzellente Didaktik und Übersicht Mit 30 Abbildungen 2., überarbeitete und erweiterte Auflage

Mehr

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

Sprechen Sie Java? Hanspeter Mössenböck. Tm\ dpunkt.verlag. Eine Einführung in das systematische Programmieren Hanspeter Mössenböck Sprechen Sie Java? Eine Einführung in das systematische Programmieren 3., überarbeitete und erweiterte Auflage Tm\ dpunkt.verlag 1 Grundlagen 1 1.1 Daten und Befehle 2 1.2 Algorithmen

Mehr

Polymorphismus 179. Function.h. #include <string>

Polymorphismus 179. Function.h. #include <string> Polymorphismus 179 #include Function.h class Function { public: virtual ~Function() {}; virtual std::string get_name() const = 0; virtual double execute(double x) const = 0; }; // class Function

Mehr

back() 341, 342 begin() 317, 337 binary_search() 326 bool 49 boolalpha 312 case 73 cerr 80 char 39

back() 341, 342 begin() 317, 337 binary_search() 326 bool 49 boolalpha 312 case 73 cerr 80 char 39 Stichwortverzeichnis A Abstrakte Klasse 227, 379 Abstrakter Datentyp 379 accumulate() 333 Aggregat 114, 216, 380 Algorithmen (C++-Bibliothek) 322 Algorithmus (Definition) 16 Alias-Deklaration 123 Allgemeiner

Mehr

C Seminar. Dr.sc.nat. Michael J.M. Wagner, New Elements. Revision 89

C Seminar. Dr.sc.nat. Michael J.M. Wagner, New Elements. Revision 89 C++11 - Seminar Dr.sc.nat. Michael J.M. Wagner, New Elements Revision 89 Inhaltsverzeichnis 1 Tour de C++ 11 1 1.1 Standards und Ziele................................ 1 1.2 Kernsprache....................................

Mehr

C++ - Objektorientierte Programmierung Konstruktoren und Destruktoren

C++ - Objektorientierte Programmierung Konstruktoren und Destruktoren C++ - Objektorientierte Programmierung Konstruktoren und Destruktoren hat eine Kantenlänge hat eine Füllfarbe Kantenlänge setzen Füllfarbe lesen Volumen berechnen Leibniz Universität IT Services Anja Aue

Mehr

C++ Kochbuch. O'REILT Beijing Cambridge Farnham Köln Paris Sebastopol Taipei Tokyo

C++ Kochbuch. O'REILT Beijing Cambridge Farnham Köln Paris Sebastopol Taipei Tokyo C++ Kochbuch D. Ryan Stephens, Christopher Diggins, Jonathan Turkanis & Jeff Cogswell Deutsche Übersetzung von Andreas Heck & Thomas Demmig O'REILT Beijing Cambridge Farnham Köln Paris Sebastopol Taipei

Mehr

Thomas Binzinger. Jetzt lerne ich. Delphi. Markt+Technik Verlag

Thomas Binzinger. Jetzt lerne ich. Delphi. Markt+Technik Verlag Thomas Binzinger Jetzt lerne ich Delphi Markt+Technik Verlag Inhaltsverzeichnis Vorwort 1 1.1 1.2 1.3 1.4 2 2.1 2.2 2.3 3 3.1 3.2 3.3 3.4 3.5 3.6 4 4.1 4.2 4.3 4.4 4.5 4.6 5 5.1 5.2 5.3 Was ist Delphi?

Mehr

Objektorientierung. Helmut Herold Michael Klar Susanne Klar ^-ADDISON-WESLEY. An imprint of Pearson Education

Objektorientierung. Helmut Herold Michael Klar Susanne Klar ^-ADDISON-WESLEY. An imprint of Pearson Education Helmut Herold Michael Klar Susanne Klar Objektorientierung ^-ADDISON-WESLEY An imprint of Pearson Education München Boston San Francisco Harlow, England Don Mills, Ontario Sydney Mexico City Madrid Amsterdam

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Dynamische Datenobjekte Pointer/Zeiger, Verkettete Liste Eigene Typdefinitionen 1 Zeigeroperatoren & und * Ein Zeiger ist die Speicheradresse irgendeines Objektes. Eine

Mehr

Repetitorium Informatik (Java)

Repetitorium Informatik (Java) Repetitorium Informatik (Java) Tag 6 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Klassen und Objekte Objektorientierung Begrifflichkeiten Deklaration von Klassen Instanzmethoden/-variablen

Mehr

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

Über den Autor 9 Widmung 10. Einführung 23 Inhaltsverzeichnis Über den Autor 9 Widmung 10 Einführung 23 Über dieses Buch 23 Törichte Annahmen über den Leser 24 Wie dieses Buch organisiert ist 25 Teil I: Programmieren in C++ die ersten Schritte

Mehr

Hier wird die Verwendung der Standard Template Library (kurz STL) kurz beschrieben. Inhalt 1.Verwendung der STL Grundlagen...

Hier wird die Verwendung der Standard Template Library (kurz STL) kurz beschrieben. Inhalt 1.Verwendung der STL Grundlagen... STL Die C++ Bibliothek ist eine Sammlung von standardisierten Klassen und Containern. Zu beachten ist, dass nicht jede C++ Implementierung den ganzen Umfang der Standardbibliothek realisiert hat. Hier

Mehr

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

Manfred Dausmann Ulrich BröckI Dominik Schoop Joachim Goll C als erste Programmiersprache Manfred Dausmann Ulrich BröckI Dominik Schoop Joachim Goll C als erste Programmiersprache Vom Einsteiger zum Fortgeschrittenen 7., überarbeitete und erweiterte Auflage Mit 35 Abbildungen STUDIUM VIEWEG+

Mehr

Programmieren in C++ Überladen von Methoden und Operatoren

Programmieren in C++ Überladen von Methoden und Operatoren Programmieren in C++ Überladen von Methoden und Operatoren Inhalt Überladen von Methoden Überladen von Operatoren Implizite und explizite Konvertierungsoperatoren 7-2 Überladen von Methoden Signatur einer

Mehr

Grundkurs C++ IDE Klassenhierarchien

Grundkurs C++ IDE Klassenhierarchien Grundkurs C++ IDE Klassenhierarchien Martin Knopp & Johannes Feldmaier 20.04.2016 Folie 1/35 GK C++: IDE, Klassenhierarchien Martin Knopp & Johannes Feldmaier 20.04.2016 IDE Integrated Development Environment

Mehr

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

DAP2-Programmierpraktikum Einführung in C++ (Teil 2) DAP2-Programmierpraktikum Einführung in C++ (Teil 2) Carsten Gutwenger 18. April 2008 Lehrstuhl 11 Algorithm Engineering Fakultät für Informatik, TU Dortmund Überblick Dynamischer Speicher Klassen und

Mehr

Mapra: C++ Teil 2. Felix Gruber, Sven Groß. 2. Mai 2017 IGPM. Felix Gruber, Sven Groß (IGPM) Mapra: C++ Teil 2 2. Mai / 11

Mapra: C++ Teil 2. Felix Gruber, Sven Groß. 2. Mai 2017 IGPM. Felix Gruber, Sven Groß (IGPM) Mapra: C++ Teil 2 2. Mai / 11 Mapra: C++ Teil 2 Felix Gruber, Sven Groß IGPM 2. Mai 2017 Felix Gruber, Sven Groß (IGPM) Mapra: C++ Teil 2 2. Mai 2017 1 / 11 Themen vom letzten Mal Kontrollstrukturen Funktionen const Referenzen Zeiger

Mehr

Grundkurs C++ IDE Klassenhierarchien

Grundkurs C++ IDE Klassenhierarchien Grundkurs C++ IDE Klassenhierarchien Martin Knopp 03.05.2017 Folie 1/34 GK C++: IDE, Klassenhierarchien Martin Knopp 03.05.2017 IDE Integrated Development Environment Wir empfehlen: Qt Creator (Bestandteil

Mehr

С als erste Programmiersprache

С als erste Programmiersprache Joachim Goll Ulrich Bröckl Manfred Dausmann С als erste Programmiersprache Vom Einsteiger zum Profi 4., überarbeitete und erweiterte Auflage Teubner B.G.Teubner Stuttgart Leipzig Wiesbaden 1 2 3 4 5 GRUNDBEGRIFFE

Mehr

C++für Naturwissenschaftler

C++für Naturwissenschaftler Dietmar Herrmann C++für Naturwissenschaftler Beispielorientierte Einführung ADDISON-WESLEY An imprint of Addison Wesley Longman, Inc. Bonn Reading, Massachusetts Menlo Park, California New York Harlow,

Mehr

Mikrorechentechnik II. Klassen in C++

Mikrorechentechnik II. Klassen in C++ Mikrorechentechnik II Klassen in C++ class class cfilter { float K; float T; float Ta; public: // Filterverstärkung // Filterzeitkonstante // Tastzeit Zugriffskontrolle: public, protected, private void

Mehr

1 Einführung... 13. 2 Erste Schritte... 19. 3 Programmierkurs... 33. 4 Datentypen... 81. 5 Weiterführende Programmierung... 139

1 Einführung... 13. 2 Erste Schritte... 19. 3 Programmierkurs... 33. 4 Datentypen... 81. 5 Weiterführende Programmierung... 139 Auf einen Blick 1 Einführung... 13 2 Erste Schritte... 19 3 Programmierkurs... 33 4 Datentypen... 81 5 Weiterführende Programmierung... 139 6 Objektorientierte Programmierung... 191 7 Verschiedene Module...

Mehr

Inhaltsverzeichnis. Teil I Einführung in die C++-Programmierung 25. Einführung 19. Kapitel 1 Ihr erstes C++-Programm 27

Inhaltsverzeichnis. Teil I Einführung in die C++-Programmierung 25. Einführung 19. Kapitel 1 Ihr erstes C++-Programm 27 Inhaltsverzeichnis Einführung 19 Zu diesem Buch 19 Über die CD 19 Was ist C++? 20 Konventionen in diesem Buch 20 Wie dieses Buch aufgebaut ist 21 Das ist noch nicht alles 21 Teil I: Einführung in die C++-Programmierung

Mehr

Komplette EclipseUmgebungaufCD. Studienausgabe

Komplette EclipseUmgebungaufCD. Studienausgabe FRANZIS PROFESSIONALSERIES Komplette EclipseUmgebungaufCD Studienausgabe 5 Inhaltsverzeichnis 1 Einleitung 17 1.1 Warum dieses Buch? 17 1.2 Für wen? 17 1.3 Was erwartet Sie? 18 1.4 Was erwartet Sie nicht?

Mehr

C++ Teil 6. Sven Groß. 27. Mai Sven Groß (IGPM, RWTH Aachen) C++ Teil Mai / 14

C++ Teil 6. Sven Groß. 27. Mai Sven Groß (IGPM, RWTH Aachen) C++ Teil Mai / 14 C++ Teil 6 Sven Groß 27. Mai 2016 Sven Groß (IGPM, RWTH Aachen) C++ Teil 6 27. Mai 2016 1 / 14 Themen der letzten Vorlesung Musterlösung A2 Wdh.: Zeiger und Felder Kopieren von Feldern Dynamische Speicherverwaltung

Mehr

Grundkurs Programmieren in Java

Grundkurs Programmieren in Java Grundkurs Programmieren in Java Band 1: Der Einstieg in Programmierung und Objektorientierung von Dietmar Ratz, Jens Scheffler, Detlef Seese 2. Auflage Hanser München 2004 Verlag C.H. Beck im Internet:

Mehr

Inhaltsverzeichnis. 1 Grundlagen 1. 2 Einfache Programme 21

Inhaltsverzeichnis. 1 Grundlagen 1. 2 Einfache Programme 21 xi 1 Grundlagen 1 1.1 Daten und Befehle......................................... 2 1.2 Algorithmen............................................. 4 1.3 Variablen................................................

Mehr

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

Jürgen Wolf. C++ von A bis Z. Das umfassende Handbuch. Galileo Press Jürgen Wolf C++ von A bis Z Das umfassende Handbuch Galileo Press Auf einen Blick 1 Grundlagen in C++ 25 2 Höhere und fortgeschrittene Datentypen 133 3 Gültigkeitsbereiche, spezielle Deklarationen und

Mehr

Informatik für Ingenieure

Informatik für Ingenieure Informatik für Ingenieure Grundlagen und Programmierung in С von Prof. Dr. Axel Böttcher und Prof. Dr. Franz Kneißl Fachhochschule Regensburg Oldenbourg Verlag München Wien Inhalt Vorwort 5 1 Grundbegriffe

Mehr

C++ Teil 7. Sven Groß. 3. Juni Sven Groß (IGPM, RWTH Aachen) C++ Teil 7 3. Juni / 16

C++ Teil 7. Sven Groß. 3. Juni Sven Groß (IGPM, RWTH Aachen) C++ Teil 7 3. Juni / 16 C++ Teil 7 Sven Groß 3. Juni 2016 Sven Groß (IGPM, RWTH Aachen) C++ Teil 7 3. Juni 2016 1 / 16 Themen der letzten Vorlesung dynamische Speicherverwaltung (Wdh.) Cast bei Zeigern STL-Vektoren + Live Programming

Mehr

C++ - Objektorientierte Programmierung Konstante und statische Elemente

C++ - Objektorientierte Programmierung Konstante und statische Elemente C++ - Objektorientierte Programmierung Konstante und statische Elemente hat eine Kantenlänge hat eine Füllfarbe Kantenlänge setzen Füllfarbe lesen Volumen berechnen Leibniz Universität IT Services Anja

Mehr

C++ - Einführung in die Programmiersprache Header-Dateien und Funktionen. Leibniz Universität IT Services Anja Aue

C++ - Einführung in die Programmiersprache Header-Dateien und Funktionen. Leibniz Universität IT Services Anja Aue C++ - Einführung in die Programmiersprache Header-Dateien und Funktionen Leibniz Universität IT Services Anja Aue Modularisierung Logische Gliederung von Programmteilen mit Hilfe von Namensräumen. Aufteilung

Mehr

Objektorientiertes Programmieren

Objektorientiertes Programmieren JL Ute Claussen Objektorientiertes Programmieren Mit Beispielen und Übungen in C++ Zweite, überarbeitete und erweiterte Auflage Mit 24 Abbildungen Springer Inhaltsverzeichnis 1 Einleitung 1 1.1 Was ist

Mehr

Grundkurs Programmieren in Java

Grundkurs Programmieren in Java Grundkurs Programmieren in Java Jens Scheffler, Dietmar Ratz, Jan Wiesenberger, Detlef Seese Band 1: Der Einstieg in Programmierung und Objektorientierung ISBN 3-446-40493-7 Inhaltsverzeichnis Weitere

Mehr

Wilhelm Haager. Computeralgebra. mit Maxima. Grundlagen der Anwendung und Programmierung. Fachbuchverlag Leipzig. im Carl Hanser Verlag

Wilhelm Haager. Computeralgebra. mit Maxima. Grundlagen der Anwendung und Programmierung. Fachbuchverlag Leipzig. im Carl Hanser Verlag Wilhelm Haager Computeralgebra mit Maxima Grundlagen der Anwendung und Programmierung Fachbuchverlag Leipzig im Carl Hanser Verlag Inhalt Q Einführung 13 1.1 Grundlegendes 13 1.1.1 Motivation 14 1.1.2

Mehr

Der Gnu-C++-Compiler allerdings lässt den oben beschriebenen Code durchgehen. Das ist allerdings nicht Standardkonform und sollte deswegen vermieden

Der Gnu-C++-Compiler allerdings lässt den oben beschriebenen Code durchgehen. Das ist allerdings nicht Standardkonform und sollte deswegen vermieden 1 Der Gnu-C++-Compiler allerdings lässt den oben beschriebenen Code durchgehen. Das ist allerdings nicht Standardkonform und sollte deswegen vermieden werden. 2 Der Speicher wird auf einem besonderen Speicherbereich,

Mehr

Der C++-Programmierer, 4. Auflage

Der C++-Programmierer, 4. Auflage Leseprobe zu Der C++-Programmierer, 4. Auflage von Ulrich Breymann ISBN (Buch): 978-3-446-44346-4 ISBN (E-Book): 978-3-446-44404-1 Weitere Informationen und Bestellungen unter http://www.hanser-fachbuch.de/978-3-446-44346-4

Mehr

Inhaltsverzeichnis. Lothar Piepmeyer. Grundkurs funktionale Programmierung mit Scala ISBN:

Inhaltsverzeichnis. Lothar Piepmeyer. Grundkurs funktionale Programmierung mit Scala ISBN: Lothar Piepmeyer Grundkurs funktionale Programmierung mit Scala ISBN: 978-3-446-42092-2 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-42092-2 sowie im Buchhandel. Carl Hanser

Mehr

Grundkurs Programmieren in Java

Grundkurs Programmieren in Java 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Dietmar Ratz Jens Scheffler Detlef Seese Grundkurs Programmieren

Mehr

Seit meinem letzten Buch über Visual C++ 2008 hat sich viel verändert:

Seit meinem letzten Buch über Visual C++ 2008 hat sich viel verändert: Vorläufiges Vorwort Dieses Buch entstand aus zahlreichen Vorlesungen und Industrieseminaren, die im Laufe der Jahre immer weiterentwickelt und an die C++11/C++14-Erweiterungen von Visual Studio angepasst

Mehr

C++ Klassen, Vererbung. Philipp Lucas. Sebastian Hack. Wintersemester 2008/09. saarland.

C++ Klassen, Vererbung. Philipp Lucas. Sebastian Hack. Wintersemester 2008/09. saarland. C++ Klassen, Vererbung Philipp Lucas phlucas@cs.uni-sb.de Sebastian Hack hack@cs.uni-sb.de Wintersemester 2008/09 saarland university computer science 1 Inhalt Klassen in C++ Sichtbarkeit Erzeugen von

Mehr

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

Grundkurs Programmieren in Java Band 1: Der Einstieg in Programmierung und Objektorientierung Dietmar Ratz, Jens Scheffler, Detlef Seese, Jan Wiesenberger Grundkurs Programmieren in Java Band 1: Der Einstieg in Programmierung und Objektorientierung ISBN-10: 3-446-41268-9 ISBN-13: 978-3-446-41268-2

Mehr

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

Überblick. 6. Konstruktor und Destruktor - obligatorische Elementfunktionen einer Klasse Überblick 1. Einführung C++ / Entwicklung/ Sprachfamilie 2. Nicht objektorientierte Erweiterungen von C 2.1 Das Ein-/Ausgabekonzept von C++ 2.2 Referenzen in C++ 2.3 Heap-Allokatoren in C++ 3. Grundlagen

Mehr

Erste Schritte der Programmierung in C

Erste Schritte der Programmierung in C Erste Schritte der Programmierung in C C versus C++ Anatomie von C-Programmen für AVR- Mikrocontroller Unterschiede zwischen C++ und C 1 Grundlegende Unterschiede File-Extensions (Header und Quellcode)

Mehr

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

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf  Seite 1 von 29 Kapitel 2 Einführung in C++ Seite 1 von 29 C++ Zeichensatz - Buchstaben: a bis z und A bis Z. - Ziffern: 0 bis 9 - Sonderzeichen: ; :,. # + - * / % _ \! < > & ^ ~ ( ) { } [ ]? Seite 2 von 29 Höhere Elemente

Mehr

C++ Notnagel. Ziel, Inhalt. Programmieren in C++

C++ Notnagel. Ziel, Inhalt. Programmieren in C++ C++ Notnagel Ziel, Inhalt Ich versuche in diesem Dokument noch einmal die Dinge zu erwähnen, die mir als absolut notwendig für den C++ Unterricht und die Prüfungen erscheinen. C++ Notnagel 1 Ziel, Inhalt

Mehr

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

C++ für Dummies. Stephen R. Davis. Gegen den täglichen Frust mit C++ Übersetzung aus dem Amerikanischen: Judith Muhr. Stephen R. Davis C++ für Dummies Gegen den täglichen Frust mit C++ Übersetzung aus dem Amerikanischen: Judith Muhr IWT Verlag GmbH An International Thomson Publishing Company Bonn Albany Belmont Boston

Mehr

C++ - Objektorientierte Programmierung Vererbung

C++ - Objektorientierte Programmierung Vererbung C++ - Objektorientierte Programmierung Vererbung Personen Kunden Mitarbeiter Verwaltung Verkäufer Leibniz Universität IT Services Anja Aue Vererbung Definition von Klassen auf Basis von bestehenden Klassen.

Mehr