类模板的定义,一般的简单定义很多,我以为我理解,当我想尝试取去用的时候,发现并非如此。
简单定义如下:
template<class T> // typename 可以代替 class
class Unity{
private:
T a;
public:
void show(T b){}; //声明与定义挡在一起
};
在测试程序中
int main(){
Unity<int> u;
……
}
遇到的一个问题:模板不能和函数一样在头文件中声明,在另一个程序中实现,会导致“编译分离”,应该有方法可以解决这个问题,但是我暂时没有实现,需要时进一步研究。
那么就按照推荐的声明与定义尽量保持在一个文件中
本文介绍了C++中类模板的基本定义方法,并通过一个简单的示例进行说明。文章探讨了类模板在不同文件中的声明与实现可能导致的问题——编译分离,并提出了解决该问题的方向。
498

被折叠的 条评论
为什么被折叠?



