A class template declaration provides only the name of the class and its template arguments. Such a declaration is an incomplete class template.
The following example is a template declaration for a class named Array that takes any type as an argument.
template <class Elem> class Array; |
This template is for a class named String that takes an unsigned int as an argument.
template <unsigned Size> class String; |