- 函数模板的语法规则
- template关键字用于声明开始进行泛型编程
- typename关键字用于声明泛指类型
template <typename T> //template:告诉编译器开始泛型编程 <typename T>告诉编译器T是一个泛指类型
void Swap(T& a,T& b)
{
T t = b;
a = b;
b = t;
}
int a = 0;
int b = 1;
Swap(a,b);
float c = 2;
float d = 3;
Swap<float>(c,d);
- C++中的类模板
- 以相同的方式处理不同的类型
- 在类声明前使用template进行标识
- < typename T>用于说明类中使用的泛指类型T
template <typename T>
class Op
{
public:
T o(T a, T b);
};
- 类模板的应用
- 只能显示指定具体类型,无法自动推导
- 使用具体类型< type >定义对象
Operation < int > op1;
Operator< double > op2;
int i = op1.op(1,2);
double d = op2.op(0.01,0.02);