Modernes C++

 --- Neue Eigenschaften in C++11, C++14, C++17 und C++20 ---


Zielgruppe:

Softwareentwickler, die die neuen Spracheigenschaften der Standards C++11, C++14, C++17 und C++20 kennenlernen wollen.

Vorkenntnisse:

Gute Programmiererfahrung in "klassischem C++" (Spracheigenschaften von C++98/03, einschließlich Templates). Eventuell noch fehlendes Vorwissen kann auf Wunsch durch eine entsprechende Kombination von Kurskomponenten vorab aufgebaut werden. (Siehe Kurs "C++-Auffrischung").

Dauer:

3 Tage

Beschreibung:

Durch die neuen Sprachstandards seit C++11 hat sich der Umfang der Programmiersprache C++ stark vergrößert. Neben vielen Neuerungen, die im Wesentlichen das Lesen und Schreiben von Programmen erleichtern, wurden auch wichtige neue Konzepte eingeführt, deren vorteilhafte Anwendung ein gutes Verständnis der Zielsetzung und Verhaltensweise erforderlich machen. Dieser Kurs geht von klassischen C++-Kenntnissen aus und zeigt, welche  Spracheigenschaften mit C++11, C++14, C++17 und C++20 neu eingeführt wurden. Darüber hinaus werden auch Smart-Pointer, als Teil der C++-Standardbibliothek, vorgestellt. Weitere Neuerungen der C++-Standardbibliothek werden in anderen Kursen, wie z.B. C++-Multithreading behandelt.


Inhalt:

  • Vereinheitlichte Initialisierung
  • Bereichsbasierte Schleifen
  • Automatische Typableitung (auto, decltype)
  • Streng typisierte Aufzählungen
  • Rvalue-Referenzen und Move-Semantik
  • Konstante Ausdrücke (constexpr)
  • Lambda-Funktionen und Lambda-Captures
  • Spezielle Member-Funktionen
  • Konstruktor-Delegation
  • Konstruktorvererbung, override und final
  • Variadische Templates
  • Perfect Forwarding
  • Smart-Pointer (unique- /shared- /weak_ptr)
  • Binäre Literale und Zifferntrennung
  • Raw-String-Literale
  • Benutzerdefinierte Literale
  • Explizite Typkonvertierung
  • noexcept
  • static_assert
  • Attribute
  • Variablen-Templates
  • Typableitung bei Template-Klassen
  • Variableninitialisierung bei if und switch
  • Datentyp byte
  • Type Traits
  • constexpr if
  • Neue Arten von Non-Type-Template-Parametern
  • Template-Parameterliste für generische Lambdafunktionen
  • Designierte Initialisierer
  • Konzepte (Concepts)
  • Vergleichsoperatoren (Spaceship-Operator)
  • Module
  • Erweiterungen der Compile-Time-Unterstützung

Der Kursinhalt entspricht nicht ganz dem, was Sie suchen?

Wir nutzen Cookies auf unserer Website. Einige von ihnen sind essenziell für den Betrieb der Seite, während andere uns helfen, diese Website und die Nutzererfahrung zu verbessern (Tracking Cookies). Sie können selbst entscheiden, ob Sie die Cookies zulassen möchten. Bitte beachten Sie, dass bei einer Ablehnung womöglich nicht mehr alle Funktionalitäten der Seite zur Verfügung stehen.