Skip to content

Latest commit

 

History

History
56 lines (32 loc) · 2.81 KB

ExerciseSchedule_AdvancedCourse.md

File metadata and controls

56 lines (32 loc) · 2.81 KB

HEP C++ Advanced Course's exercise schedule

  • List of exercises per day, with preferred order.
  • Solutions and hints can be found in the ExercisesCheatSheet.md file located in the same directory.
  • Each exercise is in its own directory and referred to in the following by the name of the directory

There are far too many exercies on each day. They are given in order in which they should be done.

Day 1

Hello World (directory: hello, CheatSheet)

Operator overloading (directory: operators, cheatSheet)

Move semantic (directory: move, cheatSheet)

Debugging (directory: debug, cheatSheet)

This was actually covered in the essential course, but it's always good to be fluent with gdb when writing C++ !

Day 2

The tools exercises of day 2 are special as they will have been played (quickly) during the course. People should replay them and discover the tools by themselves.

Smart pointers (directory: smartPointers, cheatSheet)

std::optional (directory: optional, cheatSheet)

std::variant (directory: variant, cheatSheet)

Generic programming / templates (directory: templates, cheatSheet)

(optional) Address sanitizer (directory: asan, cheatSheet)

(optional) Undefined behaviour sanitizer (directory: ubsan

Day 3

Race conditions (directory: race, cheatSheet)

Atomicity (directory: atomic, cheatSheet)

Generic programming / templates (directory: templates, cheatSheet)

As a prerequisite for variadic templates, and in case it was not covered in day 2 session

Variadic templates (directory: variadic, cheatSheet)

Spaceship operator <=> (directory: spaceship, cheatSheet)

Concepts (directory: concepts, cheatSheet)