传递指向指针的引用(int *&i)

形参 
  int  *&v1
                   的定义应从右向左理解:v1是个引用,与指向int型的对象的指针相关联,也就说,v1只是个传递进swap函数的任意指针的别名,
#include <iostream>
using namespace std;
void swap(int *&v1,int *&v2)
{
int *tmp=v2;
v2=v1;
v1=tmp;
}
int main()
{
int i=10;
int j=20;
int *pi=&i;
int *pj=&j;
cout<<"Before swap()\tpi:"<<*pi<<"\tpj:"<<*pj<<endl;
swap(pi,pj);
cout<<"after swap()\tpi:"<<*pi<<"\tpj:"<<*pj<<endl;
return 0;


}
//实现交换2个值

原文地址:https://www.cnblogs.com/HuaiNianCiSheng/p/3074748.html