模板类如何在C ++中使用另一个模板类中的类型?

时间:2014-03-18 22:33:07

标签: c++ class templates

我有一个依赖于另一个模板类的模板类。 TemplateClassB如何使用TemplateClassA的TypeA类型?

template <int L>
class TemplateClassA {
public:
  typedef unsigned TypeA;
};

template <typename E, typename F>
class TemplateClassB {
  TemplateClassA::TypeA var;   //error: invalid use of template-name 'TemplateClassA' without an argument list
}; 

int main(){
  TemplateClassA<1> A = TemplateClassA<1>();
}

1 个答案:

答案 0 :(得分:2)

正如Brian所说,使用

typename TemplateClassA<L>::TypeA var;

其中Lint