Template parameters (C++ only)

There are three kinds of template parameters: You can interchange the keywords class and typename in a template parameter declaration. You cannot use storage class specifiers (static and auto) in a template parameter declaration.

C++ Template parameter packs can also be a kind of template parameter. For more information, see Variadic templates (C++11).