C++ 11 für Fortgeschrittene

Dieser Fortgeschrittenen-Kurs vermittelt die objektorientierten Elemente von C++11 und wichtige Erweiterungen und Änderungen des neuen Sprachstandards C++11. Die Anwendung des objektorientierten Paradigmas Klassen – Vererbung – Polymorphismus wird anhand eines durchgehenden Beispiels dargestellt.

Nach der Schulung kennen Sie den ANSI C++ Sprachumfang und können mit C++ objektorientiert programmieren. Neben der syntaktischen Beherrschung der Objektorientierung in C++, werden alle Teilnehmer beurteilen können, ob und wann objektorientierte Elemente in Programmen von Vorteil sind.

Als Entwicklungsumgebung wird Linux mit dem GNU-Compiler gcc 4.8. oder neuer mit Codeblocks verwendet. Auf Wunsch kann die Schulung auch mit Microsoft Visual Studio 2013 durchgeführt werden.

Die Schulung wendet sich an Programmierer, die bereits die Grundlagen von C oder C++ beherrschen und sich vertieft mit C++ und Objektorientierung beschäftigen wollen.

Inhalte

  • Überblick Objektorientierung und UML
  • Klassen
    • Datenkapselung
    • Elementvariable
    • Elementmethoden
    • Klassen-Daten und -Methoden
    • const, constexpr
  • Konstruktoren, Destruktoren
    • Direktes und indirektes Inlining
    • Delegation von Konstruktoren
    • Überladene Konstruktoren
    • Copy-Konstruktor
    • Move-Konstruktor
  • Operatoren
  • Dynamische Speicherverwaltung mit new und delete
  • Memory leaks
  • Smart pointer
  • Relationen zwischen Klassen
    • Ein- und Mehrfachvererbung
    • Aggregation
    • Assoziation
    • Komposition
  • Polymorphismus
  • Virtuelle Methoden
  • Abstrakte Klassen
  • Templates und Template-Klassen
  • Cast-Operatoren
  • Ausnahmebehandlung
  • R-Value-Referenzen
  • Lambda-Konstrukt
  • Datei- und String-Streams
  • STL Vector
  • Laufzeitoptimierungen
  • Ausblick Spezialthemen

Termine

20.03.–23.03-2017

25.09.–27.09.2017