天道佩恩
2016-08-23 21:04:19浏览 3623
#include <iostream>
using namespace std;
void swap(int* const a, int* const b)
{
*a = *a ^ *b;
*b = *a ^ *b;
*a = *a ^ *b;
}
int main(void)
{
int x = 10;
int const y = 10; // y值不可变
int const* p = &x; // p指向的int的值不可变
int* const q = &x; // q的值不可变
int const* const r = &x;// r指向的int值不可变,r的值也不可变
int const& xx = x; // xx的不可变
// 记忆方法:const左侧的类型不可变
// int const 代表int的值不可变
// int* const 代表int*不可变
// 所以:int const* const r 代表r指向的值(int类型)不可变,r的值(int*类型)也不可变
int a = 10;
int b = 20;
swap(&a, &b);
cout << a << endl;
cout << b << endl;
return 0;
}