E2102 特化パラメータを指定しないとテンプレート 'template' を使えない (C++)

提供: RAD Studio
移動先: 案内検索

コンパイラのエラーと警告(C++):インデックス への移動

汎用形式のテンプレートは,特化パラメータを使って参照する必要があります。たとえば,2 つのテンプレートパラメータをとる foo というテンプレートクラスがある場合,正しい参照は次の形式になります。



 foo<int, char>



テンプレートを foo として正しく参照できるのは,次の 2 つの場合だけです。

  • テンプレート名をテンプレートテンプレート引数として渡す場合
  • クラステンプレートのメンバーを宣言するときに,それを包含するテンプレートの型を参照する場合

例を示します。



 template<class T>
 class foo
 {
 public:
     foo();       // テンプレート名のみの正しい使用です
     foo& operator=(const foo&);
 };
 foo<foo> x;   // エラー: テンプレートテンプレート引数ではありません
 foo y;    // エラー: 特化パラメータが必要です