• Media type: E-Book
  • Title: Moderne C++ Programmierung : Klassen, Templates, Design Patterns
  • Contains: Vorwort zur zweiten Auflage; Vorwort zur ersten Auflage; Danksagung; Inhaltsverzeichnis; 1 Einführung; 2 Die Sprache C++; 2.1 Geschichte und Paradigmenwandel; 2.2 Grundlagen; 2.2.1 Bezeichner in C++; 2.2.2 Der Präprozessor; 2.2.3 Variablen; 2.2.4 Standarddatentypen; 2.2.5 Literalkonstanten; 2.2.6 Konstanten; 2.2.7 Aufzählungen; 2.2.8 Arrays; 2.2.9 Zeiger; 2.2.10 Referenzen; 2.2.11 Typenkonvertierung; 2.2.12 Ausdrücke; 2.2.13 Operatoren; 2.2.14 Anweisungen; 2.2.15 Kontrollstrukturen; 2.2.16 Funktionen; 2.2.17 Funktionsüberladung; 2.2.18 Funktions-Inlining; 2.2.19 Makros
    2.2.20 Dynamische Speicherallokation2.2.21 Strukturen und Klassen; 2.2.22 Typenkonvertierung mit Konstruktoren; 2.2.23 Globale, automatische und dynamischeInstanziierung; 2.2.24 Speicherklassen; 2.2.25 Der Scope-Operator; 2.2.26 Verschachtelte Typen; 2.2.27 Die friend-Deklaration; 2.2.28 Statische Methoden und Attribute; 2.2.29 Vererbung; 2.2.30 Virtuelle Methoden und Polymorphismus; 2.2.31 Operatoren der Typenkonvertierung; 2.2.32 Mehrfachvererbung; 2.2.33 Virtuelle Vererbung; 2.2.34 Das Schlüsselwort const; 2.2.35 Operatorüberladung; 2.2.36 Exception Handling
    3 Die objektorientierte Programmierung mit C++3.1 Der Klassenbegriff; 3.2 Die Rolle von Patterns und Idiomen; 3.2.1 Der Iterator; 3.2.2 Das Zustandsmuster; 3.2.3 Das Singleton-Muster; 3.3 Datenstrukturen und Containerklassen; 3.3.1 Die Liste; 3.3.2 Der Vektor; 3.3.3 Dynamische Container und das Problemder Speicherfragmentierung; 3.3.4 Verfeinerung des Zugriffs durch überladeneOperatoren; 3.4 Arbeiten mit Invarianten; 4 Generische und generative Programmierung mit C++; 4.1 Templates; 4.1.1 Funktionstemplates; 4.1.2 Klassentemplates; 4.1.3 Methodentemplates; 4.1.4 Instanziierung von Templates
    4.1.5 Member-Templates4.1.6 Spezialisierung von Templates; 4.1.7 Partielle Spezialisierung; 4.1.8 Vorgabeargumente für Templateparameter; 4.1.9 Abhängige und qualifizierte Namen; 4.1.10 Explizite Qualifizierung von Templates; 4.1.11 Barton-Nackman-Trick; 4.1.12 Das Schlüsselwort typename; 4.1.13 Template-Templateparameter; 4.1.14 Container mit Templates; 4.1.15 Smart Pointer mit Templates; 4.1.16 Projektorganisation mit Templates; 4.2 Konzepte für den Einsatz von Templates; 4.2.1 „Policy Based Design"; 4.2.2 Idiome für die Template-Programmierung; 4.2.3 Compiletime-Assertions
    4.3 Aspektorientierte Programmierung5 Die C++-Standardbibliothek; 5.1 Die Geschichte der Standardbibliothek; 5.2 Die Teilbereiche der Standardbibliothek; 5.2.1 Die Streams; 5.2.2 Formatierungen auf einem ostream; 5.2.3 Die Manipulatoren; 5.2.4 Die File-Streams; 5.2.5 Die String-Streams; 5.2.6 Die STL; 5.2.7 Die Stringklasse std::string; 5.2.8 Pseudocontainer für optimiertes Rechnen; 5.2.9 Autopointer; 6 Das Softwareprojekt mit C++; 6.1 Modularisierung eines C++-Projekts; 6.1.1 Der Umgang mit Headerdateien; 6.1.2 Namensräume; 6.1.3 Das argumentenabhängige Lookup-Verfahren
    6.1.4 Einige Anmerkungen zum Linker
  • Contributor: Schneeweiß, Ralf [Author]
  • imprint: Berlin; Heidelberg: Springer Vieweg, 2012
  • Published in: Xpert.press
    SpringerLink ; Bücher
  • Issue: 2. Aufl. 2012
  • Extent: Online-Ressource (XIII, 393S. 21 Abb, digital)
  • Language: German
  • DOI: 10.1007/978-3-642-21429-5
  • ISBN: 9783642214295
  • Identifier:
  • RVK notation: ST 250 : Einzelne Programmiersprachen (A-Z)
  • Keywords: C++
    C++
  • Origination:
  • Footnote: Description based upon print version of record
  • Description: 1. Einführung -- 2. Die Sprache C++ -- 3. Die Objektorientierte Programmierungmit C++ -- 4. Generische und generative Programmierung mit C++ -- 5. Die C++- Standardbibliothek -- 6. Das Softwareprojekt mit C++. 5. Die C++- Standardbibliothek -- 6. Das Softwareprojekt mit C++.

    C++ ist eine objektorientierte Programmiersprache. Neben der Objektorientierung gewinnt aber die generische Programmierung mittels parametrisierbaren Klassen oder Templates zunehmend an Bedeutung, da diese Methode große Vorteile gegenüber der objektorientierten aufweist, wenn es darum geht, wiederverwendbaren Code zu schreiben. Dieses Buch liefert eine fundierte Darstellung des modernen Programmdesigns in C++ gemäß dem ANSI/ISO-Standard. Der Autor gibt dabei zunächst ein kompaktes Repetitorium der grundlegenden Sprachelemente von C++ und erläutert dann detailliert die klassische objektorientierte Modellierung sowie die modernen Techniken der generischen oder aspektorientierten Programmierung mittels Templates und Design Patterns.