#include <iostream>
using namespace std;
void swap_a(int &a , int &b) {
a = a + b;
b = a - b;
a = a - b;
}
void swap_b(int &a, int &b) {
a = a ^ b;
b = a ^ b;
a = a ^ b;
}
/*
* 在例如嵌入式开发这种空间有限的情况下,还是有用的
* 亦或操作肯定比加法运算更简单,效率更高
* 加法运算需要考虑溢出的问题,所以亦或也更安全
*/
int main() {
int a = 1;
int b = 2;
swap_a(a, b);
cout<<a<<"--"<<b<<endl;
swap_b(a, b);
cout<<a<<"--"<<b<<endl;
}