Learning more about C++


This course is about common C++ idioms that are related to:

– types system (return type resolver, type erasure, etc.)

– polymorphism (CRTP, virtual constructor)

–  dependencies (PIMPL)

– templates (SFINE, enable-if, object generator)

– resource management (RAII, reference counting, resource return)

– optimization (SOO, EBO)

Idioms emerge from certain features of a programming language or a lack of them.  Thus, learning C++ idioms helps better understand this language.

While learning those idioms, we will touch upon many parts of C++ like template parameters, including parameter pack, overload resolution, types of polymorphism, casting, conversion operators, placement new, special member functions, friend declarations, type deduction, etc.



Leave a Reply