C++————模板的分离编译

模板的分离编译

1.模板的分离编译=模板+分离编译

2.对于模板我们并不陌生,但什么是分离编译呢?,分离编译即就是:一个程序有若干个源文件(.cpp文件)共同实现,而每个源文件单独生成目标文件(.obj文件),最后将所有目标文件链接起来形成单个可执行文件(.exe)。

那么模板的分离编译到底是什么?模板的分离编译即就是模板的类的成员方法写在.cpp文件中和模板类写在.h文件中区别开来。

然而模板的分离编译会出现一下错误:

C++————模板的分离编译

3.如何为实现模板的分离编译:

①:在模板头文件xxx.h里面显示实例化 模板类的定义后面添加template class Seqlist;但尽量不要用这种方法,首先是老编译器不支持,其次是实例化依赖调用者。

实现代码:

C++————模板的分离编译
C++————模板的分离编译

测试结果如下:

C++————模板的分离编译

②将定义和声明放在xxx.h里面。

实现代码:

C++————模板的分离编译