#include<iostream>
using namespace std;
void swap(int &a,int &b){
a+=b;
b=a-b;
a=a-b;
}
void swap2(int &a,int &b){
int temp=a;
a=b;
b=temp;
}
int main(){
int list[5]={1,2,3,4,5};
int a=2;int b=2;
swap(a,b);//正确
//swap(list[1],list[1]);//错误,这样传过去的地址相同,a+=b后,a和b的值是一样的,然后b=a-b,会使二者都变为0
swap2(list[1],list[1]);
return 0;
}
C++ 引用 交换数组元素
最新推荐文章于 2024-02-02 11:05:52 发布