Other Modifications in C++ 17
Understand important template modifications introduced in C++17 such as typename in template parameters, variable templates for traits, pack expansions with using declarations, and new logical metafunctions. This lesson helps you improve template code readability and functionality with practical examples.
In C++17 there are also other language features related to templates that are worth to mention:
Allow typename in a template template parameters
Allows you to use typename instead of class when declaring a template template parameter.
Normal type parameters can use them interchangeably, but template template parameters were restricted to class.
More information in N405110.
Allow constant evaluation for all non-type template arguments
Remove syntactic restrictions for pointers, references, and pointers to members that appear as non-type template parameters.
More information in ...