模板类如何实现多态?

见代码:
C/C++ code

template<typename T>
class Temp
{
    virtual void X(T value);
    virtual void Y();
};

class Person
{
public:
    void Y()
    {
        a->Y();
    }

protected:
    Temp<????> *a;    //这里????处如何定义?

};

class Teacher: public Person
{
public:
    Teacher()
    {
        a = new Temp<int>;
    }

};

class Student: public Person
{
public:
    Student()
    {
        a = new Temp<string>;
    }

};




Temp<????> *a; //这里????处如何定义?

作者: WuLoveXue   发布时间: 2011-06-16

http://blog.csdn.net/longlong_ago/archive/2007/09/06/1774509.aspx

作者: yfkiss   发布时间: 2011-06-16

class Person : public Temp<Person>
{
 // 
};

作者: dizuo   发布时间: 2011-06-16

<???>里就放你要的类型

作者: downmooner   发布时间: 2011-06-16