What Has C++20 Ever Done For Templates?

By Hendrik Niemeyer

The answer is a lot! There are some smaller features like more possibilities for non-type template parameters (literal class types and floating points are now possible) and lambda expressions now allow template type parameters in their definition. But the biggest feature is clearly concepts which allow us to easily define requirements on template arguments which are enforced by the compiler.

This talk will give a tour of the new features of templates in C++20 and will discuss how the new features work and what they can be used for.