#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
using namespace std;
template <typename T>
void mySwap(T &a, T &b)
{
T tem;
tem = a;
a = b;
b = tem;
}
int main(void)
{
int number1 = 3, number2 = 5;
double number3 = 4.23, number4 = 5.34;
//自动类型推导,编译器可以根据传递的值,自动的进行数据类型的推导
mySwap(number1, number2);
cout << "number1=" << number1 << endl;
cout << "number2=" << number2 << endl;
mySwap(number3, number4);
cout << "number3=" << number3 << endl;
cout << "number4=" << number4 << endl;
//显示的指定传递的数据类型,使用<>,把传递的数据类型写在里面即可
//这些数据在上面已经交换一次了,所以会显示原来的值
mySwap<int>(number1, number2);
cout << "number1=" << number1 << endl;
cout << "number2=" << number2 << endl;
mySwap<double>(number3, number4);
cout << "number3=" << number3 << endl;
cout << "number4=" << number4 << endl;
system("pause");
return 0;
}
/*
程序目的:
程序功能:使用模板交换两个数字的值
(1)编译器可以自动推导数据类型进行转换
(2)当是用户自定义的数据类型的时候,需要使用<数据类型>指出数据类型
2019/01/08 22--24--56
*/
2函数模板实现不同数据类型数据交换
猜你喜欢
转载自blog.csdn.net/baixiaolong1993/article/details/86104207
今日推荐
周排行