c++ 内部模板类如何继承

  1. #include <iostream>
  2. template<typename _A>
  3. struct A
  4. {
  5.     template<typename _B>
  6.     struct B {};
  7. };

  8. template< typename _A, typename _B >
  9. struct C : A<_A>::template B<_B>
  10. {
  11.     C()
  12.     {
  13.         std::cout << "C instance created.\n";
  14.     }

  15. };

  16. int main()
  17. {
  18.     C<int,int> cc;

  19.     return 0;
  20. }


如果限定符::前面的名称依赖于某个模板参数,且后面紧跟一个template-id 就需要加template

你可能感兴趣的:(c++ 内部模板类如何继承)