首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

急派生一个类模板的有关问题,

2012-02-20 
急!派生一个类模板的问题,求助。不常用模板,今日一用问题就来了,请各位高手帮忙解决我的代码太乱,我模拟了

急!派生一个类模板的问题,求助。
不常用模板,今日一用问题就来了,请各位高手帮忙解决

我的代码太乱,我模拟了一下过程,应该能看的明白。想法是实现聚集,先用模板定义一个聚集的基类
然后其他的聚集类派生至这个基类

已经实现的一个模板基类
template   <class   ITEMTYPE>   class   Base
{
public:
int   count();

ITEMTYPE   GetItem(int   index);
}

==========================================================

class   TestItem
{
......(略)
};


template   class   Test:   public   Base   <TestItem>
{
....(其他方法略)
}


在测试程序中写下如下代码
Test   a;
a.count();  
编译错误


去掉a.count()这行测试代码,编译正常,请问怎么回事?

[解决办法]
模板类的int count();的实现必须写在.h文件中。
或在类声明中直接写成int count(){ ...; return xxx;}

[解决办法]
template class Test: public Base <TestItem> 有问题。
class Test: public Base <TestItem>
模板类的声明和实现必须放在同一个文件中。

热点排行