作用:实现代码重用
函数模板:
template<typename T>//模板申明 T add(T a,T b) { return a+b; } int main() { int a = 1,b = 9; cout<<add(a,b)<<endl; float a1 = 0.5,b1 = 0.9; cout<<add(a1,b1)<<endl;//自动将类型进行转化 }
类模板:
#include<iostream> using namespace std; template<class T>//如果需要使用到多种类型可声明为template<class T,class TT> class A { public : void push(T a); }; template<class T> void A<T>::push(T a) //模板类函数的实现之前需声明一下模板 { cout<<a<<endl; } int main() { int a = 9; A<int> a1;//模板(声明模板类型)类对象 a1.push(a); }