函数:使用函数模板,泛型引用,重载进行数据交换
2017-11-07 08:29
615 查看
#include <iostream> template <typename T> void Swap(T *a, T *b, int n); template <typename T> void Swap(T &a, T &b); void Show(int a[]); const int Lim = 8; int main(void) { using std::cout; int i=10, j=20; cout << "i,j = " << i << ", " << j << ".\n"; cout << "Using compiler-generated int swapper:\n"; Swap(i,j); cout << "Now i, j = " << i << ", " << j << ".\n"; int d1[Lim]={0,7,0,4,1,7,7,6}; int d2[Lim]={0,7,2,0,1,9,6,9}; cout << "Original arrays:\n"; Show(d1); Show(d2); Swap(d1,d2,Lim); cout << "Swapped arrays:\n"; Show(d1); Show(d2); return 0; } template <typename T> void Swap(T *a, T *b, int n) { T temp; for(int i=0; i<n; i++) { temp=a[i]; a[i]=b[i]; b[i]=temp; } } template <typename T> void Swap(T &a, T &b) { T temp; temp = a; a = b; b = temp; } void Show(int a[]) { using std::cout; using std::endl; cout << a[0] << a[1] << "/"; cout << a[2] << a[3] << "/"; for(int i=4; i<Lim; i++) cout << a[i]; cout << endl; }
相关文章推荐
- 函数模板,函数模板重载,可变參数模板,函数模板覆盖,通过引用交换数据
- 函数模板,函数模板重载,可变参数模板,函数模板覆盖,通过引用交换数据
- java使用泛型进行任意类型<引用类型>数组交换
- Eval()函数绑定数据时,不能使用IF进行逻辑判断的解决
- android使用JSON进行网络数据交换(服务端、客户端)的实现
- ASP.NET中使用Eval()函数绑定数据时,不能使用IF进行逻辑判断的解决方案
- 在Silverlight中使用Socket进行通信(1)Socket"请求-回复"方式的简易数据交换
- ASP.NET中使用Eval()函数绑定数据时,不能使用IF进行逻辑判断的解决方案
- java使用泛型进行数组交换
- 黑马程序员_使用管道流进行两线程间数据交换
- 在Unity3D里使用JSON格式通过PHP进行数据交换
- SQL SERVER2000教程-第五章 处理数据 第十六节 使用CHARINDEX函数代替Like进行数据查询
- C语言学习10:结构体,结构体应用,联合用法,枚举,fopen函数使用,fseek,ftell的作用和文件结束符EOF,数组和文件交换数据,个人信息管理。
- 提高web性能之--使用JSON格式来进行数据交换
- 自定义函数模板和泛型排序函数的使用
- ASP.NET中使用Eval()函数绑定数据时,不能使用IF进行逻辑判断的解决方案
- 让人泪奔的方法:两个变量在不使用其他变量的情况下进行数据交换
- android 使用JSON进行网络数据交换
- Android使用JSON进行网络数据交换
- android 使用JSON进行网络数据交换