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 lekcyjnych
Wycena szkolenia zamkniętego

Szkolenie zamknięte w siedzibie Klienta.

Klient zapewnia salę szkoleniową i sprzęt.

Zapytaj o termin i cenę
Wycena szkolenia zdalnego

Szkolenie live online. Warsztaty z trenerem.

Zapytaj o termin i cenę
Terminy szkoleń otwartych

Brak terminu?

Zgłoś zainteresowanie szkoleniem