前言:
当你在写代码的时候可能会遇到这样的情况,多处地方都需要调用同一个功能/方法,但是我们不知道调用者传递进来的参数类型,以及这个方法的返回类型,或许你可能想到的是重载或者重写,但是还有另一种方式实现就是-- 模板。
当然除此之外,还有类模板,它是实现代码重用的一种工具。
模板可以说是分为两种类型,一种是类模板,一种是函数模板,先来说下函数模板。
函数模板:
场景:两个数相加求和,我们并不知道它是int,double还是long的两个数值相加。那我们可能会这样写:
int sum(int x, int y){
return x + y;
}
double sum(double x, double y){
return x+y;
}
long sum(long x, long y){
return x + y;
}
相加,只是两个数的类型不同。这是不是与开头所说的模板的介绍相似,那我们就用函数模板来实现下这个方法。
函数模板的声明格式:
template<typename T>
返回类型 函数名(模