.. meta:: :description: C and C++ Programming Courses :keywords: schulung, training, programming, c, c++ C and C++ Programming ===================== .. sidebar:: .. list-table:: :align: left * * **Language** * Trainer language is English or German * * **Material** * * :doc:`/trainings/material/soup/c/group` * :doc:`/trainings/material/soup/cxx/group` * :doc:`/trainings/material/soup/cxx03/group` * :doc:`/trainings/material/soup/cxx11/group` * :doc:`/trainings/material/soup/cxx-design-patterns/group` * * **Related** * * :doc:`/trainings/repertoire/misc/make` * :doc:`/trainings/repertoire/misc/cmake` * :doc:`/trainings/repertoire/misc/unittests` Courses ------- * :doc:`c`. A gentle intro to C, as envisioned by the inventors of the language. * Data types (integer types floating point, ``struct``, ``union``, ...) * Control flow (``if``, ``switch``, ``while``, ``for``) * Functions * Pointers (a lot) * Dynamic memory .. toctree:: :hidden: c * :doc:`c-advanced`. * Traps, traps, traps (and their avoidance) * The preprocessor: macro writing * Performance, compiler optimizations, profiling * Debugging * Miscellaneous: ``volatile``, alignment, ... .. toctree:: :hidden: c-advanced * :doc:`cxx`. A tour through C++: old school C++, and the new C++ since 11. * Encapsulation, and object oriented programming * Standard template library (STL) * Template metaprogramming * Dynamic memory * Lambda expressions * Rvalue references (*move*) * Threading .. toctree:: :hidden: cxx * :doc:`cxx11` .. toctree:: :hidden: cxx11 * :doc:`design-patterns/design-patterns` .. toctree:: :hidden: design-patterns/design-patterns