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

template <typename type> class base:public type 求这样定义的意义解决方法

2012-02-25 
template typename type class base:public type 求这样定义的意义看过一些老外的源码,发现出现过一些类

template <typename type> class base:public type 求这样定义的意义
看过一些老外的源码,发现出现过一些类似这样的定义!但是不能理解这种方式存在的好处!请明白的解释一下

[解决办法]
看看讲模板的书.
[解决办法]
找本《Modern C++ Design》看看。
[解决办法]

探讨
找本《Modern C++ Design》看看。

[解决办法]
像这样的程序:
template <class T>
class EatImpl : public T
{
public:
void eat()
{
T *p = (T*)this;
cout << p->get_type().c_str() << " eat." << endl;
}
}

class Dog : public EatImpl<Dog>
{
public:
string get_type()
{
return string("dog");
}
}

int main(void)
{
Dog dog;
dog.Eat();
return 0;
}
可以拼凑出一个 dog 类,dog 类里面有个 eat 的方法,我可以写不同的 eat 的实现来拼凑出不同的 dog..heh..不知道说清楚没有

热点排行