C++模板
函数模板
- 概念:函数的模子,在被使用时,按照需要赋予相应的类型。
- 使用格式:
//template<typename A,typename B.....typnename N>
//返回值类型 函数名(参数列表){}
template<typename T>
T func1(T a ,T b){
return a+b;
}
-
实例化
-
隐式(推导)实例化
template<typename T> T func1(T a ,T b){ return a+b; } int main(){ int A = func1(1,2); return 0; }
-
显式实例化
template<typename T> T func1(T a ,T b){ return a+b; } int main(){ float a = func1<float>(1,2); return 0; }
-
类模板
- 使用格式
//template<class A,class B .. class N>
//class name{}
//示例:
template<class A>
class X{
public:
T func1(T A,T B){
return 1;
}
private:
T A;
T B;
}
- 实例化
X<int> x;