none
请问如何在一个模板类中声明一个模板类中的模板类的指针 RRS feed

  • 问题

  • template<typename T>

    class a{

        template<typename T>

        class b{

    }

    }

    我试过这样写:

    template <typename T>

    class point{

    a<T>::b<T>* p;

    }

    但让我感觉奇怪的是,编译器说在*前缺少;

    尝试过去掉<T>,但无论去掉哪个,或者两个都去掉都不行~~~~VS2010说模板类必须加模板参数(具现)

    那么请问我该怎样做?

    2010年10月20日 4:17

答案

  • typename a<T>::b<T>* p;

    由于在模板类a进行聚显之前,并不知道b<T>到底是什么,需要使用typename告诉编译器,我现在要声明一个变量了。


    麻烦把正确答案设为解答。
    2010年10月20日 6:24
    版主