Zakres szkolenia
W trakcie kursu uczestnicy poznają techniki programowania generycznego w C++. W trakcie szkolenia szczególny nacisk położony jest na praktyczne wykorzystanie szablonów do pisania kodu, który jest szybki, bezpieczny i łatwy do ponownego wykorzystania.
Plan szkolenia
Szablony
- Szablony funkcji
- Szablony klas
- Parametry szablonów
- Dedukcja argumentów szablonu
- Specjalizacja i przeciążanie szablonów
- Model kompilacji szablonów
- Aliasy szablonów
- Variable templates
- Lambdy generyczne w C++14
Variadic templates
- Funkcje wariadyczne - variadic template functions
- Klasy wariadyczne - variadic template classes
- Idiom Head-Tail
-
Typy wariadyczne w bibliotece standardowej
- Wrażenia fold - fold expressions
Techniki programowania generycznego
- Szablony i perfect forwarding
- Metafunkcje i cechy typów - type traits
- Tag dispatching
- Reguła SFINAE &
enable_if<T>
-
Klasy cech i wytycznych
- Idiom CRTP
- Sekwencje indeksów
- Type erasure - concept based polymorphism
Szablony w C++20
- Koncepty
- Lambdy generyczne w C++20
3 dni po 8 godzin lekcyjnych