前述のようなテンプレート引数の組み合わせを使用するには、その前に特殊化を宣言する必要があります。次の例は twice と sort の特殊化された実装を宣言しています。
| template <> unsigned twice<unsigned>( unsigned original ); | 
| template <> sort<char*>(Array<char*> store); | 
コンパイラがテンプレート引数を明確に確認できる場合には、次の例のようにテンプレート引数を省略することができます。次に例を示します。
| template <> unsigned twice(unsigned original); | 
| template <> sort(Array<char*> store); |