//标准格式:template<typename T> // :template<class T>
1.模板函数(适用于参数个数相同而参数类型不同的同名函数)
#include <iostream> using namespace std; template <typename T> T add(const T a, const T b) { T item; item = a + b; return item; } int main() { int a, b; cin >> a >> b; cout<<add(a,b); double c, d; cin >> c >> d; cout <<add(c, d); system("pause"); return 0; }
2.类模板(在类外定义成员函数时,需要再声明template<class T>)
#include <iostream> using namespace std; template <class T> class test { public: T item; T add(const T a, const T b); }; template <class T> T test<T>::add(const T a, const T b) { item = a + b; return item; } int main() { test<double> t1; //注意要用类型实例化一个类 cout<<t1.add(1.2,2.4); system("pause"); return 0; }