基于c++的函数模板

来源:互联网 发布:哪个运营商的4g网络快 编辑:程序博客网 时间:2024/05/18 00:29
函数模板//模板也可以重载
#include <iostream>
using namespace std;
template<typename T>void swap(T &a, T &b);
//void swap(int i,int j){}
//void swap(double i,double j){} 
//程序中相当于生成了以上两个函数,调用一种就生成一种
//如果再加一个函数void swap(int i,int j){cout << "a,b交换" << endl;}
//用到传入int类的就调用此函数
int main()
{
 int i=10,j=20;
 cout << "before i=" << i << "j=" << j << endl;
 swap(i,j); //生成void swap(int i,int j){}
 cout << "after i=" << i << "j=" << j << endl;
 double d1=10.01,d2=20.2;
 cout << "before d1=" << d1 << "d2=" << d2 << endl;
 swap(d1,d2); //生成void swap(double i,double j){}
 cout << "after d1=" << d1 << "d2=" << d2 << endl;
 return 0;
}
template<typename T>
void swap(T &a,T &b)
{
 T temp;
 temp = a;
 a = b;
 b = temp;
}

原创粉丝点击