文章来源:http://www.cnblogs.com/hello-tl/p/7910048.html
/* C++别名操作 在更改别名的时候同时变量也会跟着改变 */ #include "stdafx.h" #include <stdlib.h>; #include <iostream>; using namespace std; typedef struct { int x; int y; }Coord; // 例子1 void test1(){ Coord C; Coord &C1 = C; C1.x = 10; C1.y = 20; cout << "例子1 " << "x=" << C1.x << " " << "y=" << C.y << endl; } // 例子2 void test2(){ int x = 10; int &y = x; y = 20; cout << "例子2 " << "x=" << x << endl; } //例子3 void test3(){ int a = 10; int *p = &a; int *&q= p; *q = 20; cout << "例子3 " << "a=" << a << endl; } //例子4 void test4(int &x,int &y){ int n = 0; n = x; x = y; y = n; } int main(void) { //调用例子1 test1(); //调用例子2 test2(); //调用例子3 test3(); //调用例子4 int x = 10; int y = 20; cout << "-------------------------------------------" << endl; cout << "------例子四调用前---------------------------" << endl; cout << "x=" << x << " " << "y=" << y << endl; test4(x,y); cout << "------例子四调用后---------------------------" << endl; cout << "x=" << x << " " << "y=" << y << endl; cout << "-------------------------------------------" << endl; system("pause"); return 0; }