版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014183456/article/details/82874247
在C语言中我们使用两种交换函数:
摒弃这种: void swap(int x,int y) 值传递方式,拷贝值,导致原值不会改变
使用:void swap(int *x,int*y); 指针(地址)方式传递
#define swap(x,y,t) ((t)=(x),(x)=(y),(y)=(t)) 宏定义方式
在C++中我们除了可以使用以上两种还有:
void swap(int &x,int &y); 引用方式 本质还是指针传递
template<class T>void swap(T& a,T& b) 使用类模板
C++可以直接使用swap函数,在std里面,很方便。