<%-- https//cookieconsent.insites.com/download/#-- Neu ab 11.3.2018 --%>

Schulung C++ Basiswissen (Grundlagen der Programmiersprache C++)

Beschreibung/Inhalt
Unverbindliches Angebot anfordern

Zielgruppe: Softwareentwickler für Unix, Linux, Mac und/oder Windows
Niveau: Einstieg
Typische Dauer: 3 Tage (empfohlene Dauer kann abweichen - je nach Vorkenntnissen und Wünschen)
Vorkenntnisse: Grundlegende Programmierkenntnisse (C-Kenntnisse wären optimal)
Begleitliteratur: C++ kurz & gut von Kyle Loudon & Rainer Grimm
Ziel: Grundverständnis der C++-Kernsprache und wichtiger Teile der APIs
Vorgehensweise: Theorie und Praxis mit anschaulichen Übungen
Standard: aktueller C++-Standard bzw. Standard Ihrer Wahl
Entwicklungsumgebung: Visual C++ bzw. CLion oder andere Ihrer Wahl

# Einführung in C++
Geschichte von C++
Einsatzgebiete von C++
C++-ISO-Standard (Entwicklung der Standards)
Entwicklungsumgebungen/Editoren
Compiler
Vom Quellcode über Object Files zum Exectuable
# Optional: C-Grundlagen
Programmstruktur
Datentypen und Variablen (Basis-Datentypen und Arrays)
Operatoren
Typ-Wandlungen (=Casts)
Control-Flow Konstrukte (Bedingungen und Schleifen)
Funktionen
Pointer und dynamisches Memory
Enum
Struct und Union
Preprocessor
# Klassen und Objekte
Member-Variablen
Member-Funktionen (virtual und non-virtual)
Sichtbarkeiten
Konstruktoren / Destruktoren
Operator-Overloading
Ableitung (einfach, mehrfach, virtual)
# Rvalues
# Exceptions
Das Prinzip von Exceptions
Sauberer Umgang mit Exceptions
noexcept
"catch-all" und std::exception_ptr
Stolpersteine bei Exceptions
# Arbeiten mit dynamischem Memory
Verschiedene Arten von new und delete
Overloading von new und delete
Smart-Pointer (std::unique_ptr, std::shared_ptr, std::weak_ptr)
# Grundlagen von Templates
Funktionstemplates
Klassentemplates
Variadic Templates
Type-Traits
Template-Spezialisierungen (partiell und vollständig)
# std::function und Lambdas
# Type-Deduction mit auto und decltype
# Multithreading
Das moderne C++ Memory-Model
std::atomic
Promises und Futures
std::async
Threads, join und detach
Synchronisierung mit verschiedenen Arten von Mutexes
Wait-Notify mit Condition-Variables
Thread-lokale Variablen
# Kurz umrissen: ausgewählte Container und Konzepte
Auf Wunsch kann die Behandlung dieser Standard-Library-Aspekte entsprechend ausgeweitet werden
std::array
std::vector
std::deque
std::map
Das Konzept von Iteratoren und darauf aufgebauter Algorithmen

Dauer
Auf Wunsch
Ort
In Deutschland, Österreich und der Schweiz nach Ihrer Wahl
Schulungsdidaktik
Nach Ihrer Wahl: Klassische Schulung mit PC-Übungen, reine Präsentation ohne PC-Übungen oder interaktiver Workshop mit Beratungsanteil