总结:
在同一个cpp 文件中把模板类的成员函数放到类的外部,需要注意以下几点
函数前声明 template <类型形式参数表>
类的成员函数前的类限定域说明必须要带上虚拟参数列表
返回的变量是模板类的对象时必须带上虚拟参数列表
成员函数参数中出现模板类的对象时必须带上虚拟参数列表
成员函数内部没有限定
// p15-5-所有的类模板函数写在类的外部,在一个cpp中.cpp : 此文件包含 “main” 函数。程序执行将在此处开始并结束。
//
#include
using namespace std;
template
class A
{
public:
A(T t = 0);
T& getT();
A operator+(const A& other);
void print();
private:
T t;
};
int main()
{
A<int> a(666), b(888);
A<int> tmp = a + b;
tmp.print();
}
// 运行程序: Ctrl + F5 或调试 >“开始执行(不调试)”菜单
// 调试程序: F5 或调试 >“开始调试”菜单
// 入门使用技巧:
// 1. 使用解决方案资源管理器窗口添加/管理文件
// 2. 使用团队资源管理器窗口连接到源代码管理
// 3. 使用输出窗口查看生成输出和其他消息
// 4. 使用错误列表窗口查看错误
// 5. 转到“项目”>“添加新项”以创建新的代码文件,或转到“项目”>“添加现有项”以