Programowanie generyczne w C++ - szablony
Cele szkolenia
Uczestnicy szkolenia nauczą się:
- stosować techniki programowania generycznego w C++
- używać szablonów do pisania kodu, który jest szybki, bezpieczny i łatwy do ponownego wykorzystania
- implementować klasyczne techniki programowania generycznego: tag dispatching, SFINAE, CRTP
- wykorzystać szablony przy projektowaniu klas: Policy Based Design
- implementować nowoczesne szablony z wykorzystaniem ograniczeń i konceptów
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
std::tuple
std::variant
- Wyraż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
- Policy based design
- Idiom CRTP
- Sekwencje indeksów
- Type erasure - concept based polymorphism
Szablony w C++20
- Koncepty i ograniczenia szablonów
- NTTP – parametry szablonów, które nie są typami
- Lambdy generyczne w C++20
Wymagania
Opanowane podstawy programowania w języku C++.
Czas trwania
3 dni po 8 godzin lekcyjnychWycena szkolenia zamkniętego
Szkolenie zamknięte w siedzibie Klienta.
Klient zapewnia salę szkoleniową i sprzęt.
Zapytaj o termin i cenę