超级难题,模板类指针问题,内有代码。
class CBase
{
public:
void virtual show() = 0;
void build()
{
printf("CBase::build\n");
}
};
class CBase2
{
public:
void virtual show() = 0;
void build()
{
printf("CBase2::build\n");
}
};
template<class T>
class CInfo2
{
public:
void virtual show()
{
T *pT = (T*)this;
pT->build();
}
};
int _tmain(int argc, _TCHAR* argv[])
{
CInfo2<CBase> Info2;
CInfo2<CBase2> Info2New;
CInfo2<T> *p; //就是这里。
p = &Info2;
p->show();
p = &Info2New;
p->show();
return 0;
}