クラステンプレートの宣言では、クラスの名前とそのテンプレート引数だけを指定します。このような宣言は「不完全なクラステンプレート」と呼ばれます。
次の例は、任意の型の引数を取る Array というクラスに対するテンプレート宣言の例です。
template <class Elem> class Array;
次のテンプレートは、unsigned integer の引数を取る String というクラスに対する宣言です。
template <unsigned Size> class String;