E2102 特化パラメータを指定しないとテンプレート 'template' を使えない (C++)
汎用形式のテンプレートは,特化パラメータを使って参照する必要があります。たとえば,2 つのテンプレートパラメータをとる foo というテンプレートクラスがある場合,正しい参照は次の形式になります。
foo<int, char>
テンプレートを foo として正しく参照できるのは,次の 2 つの場合だけです。
- テンプレート名をテンプレートテンプレート引数として渡す場合
- クラステンプレートのメンバーを宣言するときに,それを包含するテンプレートの型を参照する場合
例を示します。
template<class T>
class foo
{
public:
foo(); // テンプレート名のみの正しい使用です
foo& operator=(const foo&);
};
foo<foo> x; // エラー: テンプレートテンプレート引数ではありません
foo y; // エラー: 特化パラメータが必要です