mcpp2025w19
Schulung bei MicroConsult: Modernes C++
vom 5. bis 8. Mai 2025
Spreadhseet mit Ergebnis der Umfrage, welcher Stoff in welcher Tiefe behandelt werden soll:
https://docs.google.com/spreadsheets/d/1ksBk1D-jUXnC4iypH_CJaVACs7DF4Oxq7xwrhd5pxWI/edit?gid=0#gid=0
Online-Version der Schulungsunterlagen (Anmeldung mit User 2025w19 und Kennwort 19w25)
- Unterlagen zu "Modernes Cplusplus" (= C++11/14/17 Erweiterungen):
https://tbfe.de/wetrain/C/Modern_Cplusplus_MCA_2025w19/ - Unterlagen zu "C++ Concurrent Programing" (aka. "Multi-Threading"):
https://tbfe.de/wetrain/G/More_About_Cplusplus_Templates_6hours/template-cplusplus.html - Unterlagen zu "C++ Metaprogrammierung" (= Templates als Compilezeit-Funktionen)
https://tbfe.de/wetrain/G/More_About_Cplusplus_Templates_6hours/template-cplusplus.html
Link zu eigenen "Info-Grafiken":
- Komplett-Verzeichnis
https://tbfe.de/data/uploads/infographics/- davon verwendet:
TBD
- davon verwendet:
Sammlung der Live-Demos mit Online Compilern:
- In 15 Schritten vom "klassischen typ-ahängigen Überladen" zu C++20 Concepts:
https://godbolt.org/z/MEqczsf1v (Beispiel wie ursprünglich ausgearbeitet 2023 KW 42)
https://godbolt.org/z/KhPGn1xWb (wie zuvor mit einigen minmalen Verbsserungen) - Ein kürzeres "motivierendes" Beispiel" zu C++20 Concepts
https://godbolt.org/z/TdrWjYW6Y (möglicherweise als etwas "realistischer" empfunden)
Beispiel-Code zu `std::tuple` mit Variationen:
- https://godbolt.org/z/aj9e7Wejr
- https://godbolt.org/z/c6zhxaYn5
- Beispiel zu type_traits und mehr
- https://godbolt.org/z/xTzxfa36r
Last not Least: Es gibt auch einige öffentliche Github-Repositories meiner Unterlagen mit Code-Beispielen, die für diesen Kurs interessant sein könnten, insbesondere wenn die in den Unterlagen enthaltenen Links zu den Online-Compilern eines Tages nicht mehr funktionieren sollten. Der Inhalt dieser Repositories ist nicht unbedingt "super gepflegt", aber C++Code findet sich dort typischerweise im Unterverzeichnis `Examples`.
In diesem Verzeichnis gibt es weitere Unterverzeichnisse (eines pro Beispiel) und der der kompilierbare heißt dann meist `demo.cpp`. es handelt sich jeweils um eigenständige `main`-Programme , die sich uner Linux auch ohne Makefile an der Kommandozeile kompilieren gleich ausführen lassen (nachdem das betreffende Verszeichnis zum Arbeitsverzeichnis gemacht wurde):
g++ -std=c++17 demo.cpp && ./a.out
Im Zusamenhang mit der in diser Woche durhgeführten Schulung interessant könnten vor allem diese Repositories sein:
- Schulung "Modernes C++" wie ab ca. 2016 bei MicroConsult durchgeführt:
https://github.com/tbfe-de/mc-cppmodern - Schulung "C++11 und Boost" Library Workshop
https://github.com/tbfe-de/mc-cpp11-BLWS - Und hier ist noch mein Vortrag "Down to Earth C++" in dem sich jeweils ein etwas ausgearbeitetes Beispiel zu C++11 `constexpr` und "Benutzerdefinierten Literal-Suffixes" befindet (= jenseits einer reinen "Syntax-Demo")
https://github.com/tbfe-de/FPGA-Kongress_2019
https://docs.google.com/presentation/d/15KsmAy6FApBrd2IFBLJcd5feyTfKUqbK5665Byw5CnY/edit?usp=sharing
https://godbolt.org/z/cv377v41j