C++ Fortgeschrittenenkurs

Seminarinformationen

Seminar - Ziel

In dieser 4-tägigen Schulung "C++ Fortgeschrittenenkurs" erlernen Sie fortgeschrittene Techniken und neue Features von C++. Der Kurs vermittelt wichtige Konzepte wie RValue-Referenzen, Move-Semantik, Initialisierungslisten, Lambdas und Templates.

Sie erhalten einen umfassenden Überblick über die Standard Template Library (STL), einschließlich ihrer Container-Klassen, Iteratoren und Algorithmen. Zudem werden Themen wie Typermittlung, Meta-Programmierung und der Einsatz von Smart Pointern behandelt. Darüber hinaus lernen Sie die Erweiterungen von C++20 kennen, darunter Concepts, Ranges und Coroutines.

Teilnehmer - Zielgruppe

  • Softwareentwickler

Kurs - Voraussetzungen

Für eine optimale Teilnahme am Kurs empfehlen wir folgende Vorkenntnisse:

Besuch des Seminars C++ Programmierung Grundlagen oder vergleichbare Kenntnisse

Seminardauer

  • 4 Tage
  • 09:00 Uhr bis 17:00 Uhr

Schulungsunterlagen

  • nach Absprache

Seminar-Inhalt / Agenda

Neue Techniken bei C++

  • Range-basierte for-Schleife (C++11)
  • RValues und Move-Semantik (C++11)
  • Initialisierungslisten (C++11)
  • constexpr (C++11, 14, 20)
  • Multithreading (C++11)
  • {} oder ()? (C++11)
  • Faltungen (C++17)

Templates (generische Programmierung)

  • Funktionstemplates
  • Klassentemplates
  • Variadische Templates (C++11)
  • Spezialisierung
  • Funktoren
  • CRTP / SFINAE

Typermittlung im Detail

  • Template-Argumente
  • auto (C++11)
  • Strukturierte Bindung (C++17)
  • decltype und std::declval
  • Automatischer Rückgabetyp (C++14)

Lambdas (C++11)

  • Grundlagen
  • Generische Lambdas (C++14)
  • Erweiterte Captures (C++14)

Standard Template Library

  • Iteratorkonzept
  • Container (z.T. C++11)
  • Funktionen (z.T. C++11)
  • Parallele Algorithmen (C++17)

Meta-Programmierung

  • Den Compiler rechnen lassen (*)
  • Expression Templates
  • constexpr if (C++17)

Erweiterungen

  • Template-Klassen
  • Mehrfachvererbung (virtual)
  • Standard-Bibliothek (Überblick): Container-Klassen, Iteratoren, Algorithmen
  • Smart Pointer (Unique, Shared, Weak Pointer)
  • Neue Utility-Klassen (std::optional, std::variant, std::any, std::string_view)

C++ 20 Erweiterungen

  • Concepts (C++20)
  • Ranges (C++20)
  • Coroutines (C++20)
  • Modules (C++20)
  • Format Library (C++20)
  • std::string functions (C++20)
  • Array bounded/unbounded (C++20)
  • std::to_array (C++20)
  • 3-way comparisons (C++20)
  • Map contains (C++20)
  • Likely & unlikely attributes (C++20)
  • Calendar and time zone library (C++20)

Weitere Schulungen zu Thema C++ Programmierung

Plattformübergreifende Entwicklung mit Qt - Einführung

- u.a. in Nürnberg, Berlin, Stuttgart, München, Köln

In dieser 3-tägigen Schulung "Plattformübergreifende Entwicklung mit Qt - Einführung" erlernen Sie die grundlegenden Konzepte und Techniken zur Entwicklung plattformübergreifender Anwendungen mit Qt. Sie machen sich mit der Qt-Entwicklungsumgebung und dem ...

C++ Programmierung Grundlagen

- u.a. in Nürnberg, Berlin, Stuttgart, München, Köln

In dieser 5-tägigen Schulung "C++ Programmierung Grundlagen" erwerben Sie die Fähigkeiten, Programme mit der erweiterten Sprache C zu entwickeln. Sie lernen, eigene Problemstellungen selbstständig in funktionierende Programme zu überführen. Die Unterschiede zu C ...

Entwurfsmuster Design-Pattern C++

- u.a. in Frankfurt am Main, Hannover, Wien, Kassel, Jena

Ziel dieses Seminars ist es Ihnen mit den Umgang mit objektorientierten Design-Pattern (Entwurfsmuster) mit C++ beizubringen.

Software Design mit Modernem C++

- u.a. in Hamburg, Paderborn, Zürich, Essen, Darmstadt

In dieser 3-tägigen Schulung "Software Design mit Modernem C++" erlernen Sie die Prinzipien eines hochwertigen Software-Designs mit der C++-Programmiersprache. Der Kurs legt den Fokus auf bewährte Entwicklungskonzepte und -prinzipien, die speziell für C++ relevant ...