This advanced C++ training is a course on object-oriented (OO) software design with the C++ programming language. The focus of the training are the essential OO and C++ software development principles, concepts, idioms, and best practices, which enable programmers to create professional, high-quality code. Additionally, the course gives insight into kernel development with C++. The course will not address special areas and applications of C++, such as for instance Template Meta Programming (TMP), or the quirks and curiosities of the C++ language. It rather teaches guidelines to develop mature, robust, maintainable, and efficient C++ code.
Since 2020 we provide two types of C++ courses, each offered two times per year:
with two different levels of prerequisites.
HLRS, University of Stuttgart Nobelstraße 19 70569 Stuttgart, Germany Room 0.439 / Rühle Saal Location and nearby accommodations
May 09, 2023
May 12, 2023
Programming Languages for Scientific Computing
Back to list
At least two to three years of experience with the language is needed. This includes a solid knowledge of the syntax of C++, experience with the standard library (std::vector, std::list, …), hands-on experience with both template-based and inheritance-based designs and some experience with design patterns.
In the on-site course, participants will be provided Linux machines. For that reason some familiarity with Linux is beneficial. Alternatively, participants will be able to use their own machines. Any operating system (Windows, Linux, MacOS, ...), any IDE/editor (MS Visual Studio, CLion, vi, emacs, ...) and any compiler capable of at least C++14 (GCC, Clang, MSVC, ...) can be used. In the online course, participants are expected to use their own devices. The programming tasks, including both Makefiles and CMake files, will be distributed before the course.
The course language is German. The slides are in English.
If you want a similar course in English, then please look at the 3- or 4-day advanced C++ courses at LRZ , the 4 day course at VSC in Vienna or directly on Klaus Iglberger's course page.
Learn more about course curricula and content levels.
Klaus Iglberger (External)
After this course, participants will:
All times are local times in the central European time zone (Berlin).
Local registration (8:30 - 9:00)
1st day course schedule (9:00 - 17:30)
2nd day schedule (9:00 - 17:30)
3rd day schedule (9:00 - 17:30)
4th day schedule (9:00 - 16:30)
Each participant will get a copy of all slides (PDF).
Besides the content of the training itself, another important aspect of this event is the scientific exchange among the participants. We try to facilitate such communication by
By registering you agree to adhere to the COVID-19 regulations of the University of Stuttgart that are in effect at the time of the course. For more information, see the COVID-19 informations and the Hygiene Concept of the University of Stuttgart.
We recommend to choose travel options and hotels with the possibility to cancel (even close to the event) because we might be forced to deliver the course as an online course.
Register via the button at the top of this page. We encourage you to register to the waiting list if the course is full. Places might become available.
Registration closes on April 23, 2022 (extended registration phase).
Late registrations after that date are still possible according to the course capacity, possibly with reduced quality of the handout.
Our course fee includes coffee breaks (in classroom courses only).
A nearby canteen is opened and we plan to have lunch there. Further two other near possibilities for lunch are on all days:
We will update this information if opening times etc. change and inform you more precisely before the course starts.
Tobias Haas phone 0711 685 87223, tobias.haas(at)hlrs.de
HLRS is part of the Gauss Centre for Supercomputing (GCS), which is one of the six PRACE Advanced Training Centres (PATCs) that started in Feb. 2012.
HLRS is also member of the Baden-Württemberg initiative bwHPC.
This course is also provided within the framework of the bwHPC training program. This course is not part of the PATC curriculum and is not sponsored by the PATC program.
See the training overview and the Supercomputing Academy pages.
Hybrid Event - Stuttgart, Germany
Back to list
High-Performance Computing Center Stuttgart
Nobelstraße 19, 70569 Stuttgart, Germany
+49 711 685-87209
A member of the Gauss Centre for Supercomputing, HLRS is one of three German national centers for high-performance computing.
HLRS is a central unit of the University of Stuttgart.