百度百科裡的解釋:引用就是某一變量(目標)的一個別名,對引用的操作與對變量直接操作完全一樣。用&符號表示
舉例:
1 using namespace std;
2 int _tmain(int argc, _TCHAR* argv[])
3 {
4 int love = 520;
5 int &ai=love;
6 /*ai是整型變量love的別名 對ai的操作實際就是對love的操作
7 注意ai前邊的&的符號不是取地址運算符 這裡是引用運算符
8 它們的符號一樣 但功能卻不一樣
9 */
10 cout << "ai:" << ai << endl; //實際就是在對love變量操作 所以ai值是520
11 ai = 0;
12 cout << "love:" << love << endl; // 上一行ai = 0 那麼love的值也變了 為0
13 cin.get() ;
14 return 0;
15 }
我們把上邊的代碼稍微改一下來區分:
1 #include <iostream>
2 using namespace std;
3 int _tmain(int argc, _TCHAR* argv[])
4 {
5 int love = 520;
6 int &ai=love;
7
8 cout << "love的地址:" << &love << endl; //取love變量地址
9 cout << "ai的地址:" << &ai << endl; ///取別名ai地址
10 cin.get() ;
11 return 0;
12 }

可以看見內存地址都一樣,這樣我們就能明白引用就是引用別名,對別名操作就是對原名的操作。
2.引用對象:
1 #include <iostream>
2 using namespace std;
3 class myCls //定義類
4 {
5 public:
6 int AddNum(int x,int y)
7 {
8 return x + y ;
9 }
10
11 };
12 int _tmain(int argc, _TCHAR* argv[])
13 {
14 myCls Love ; //先用定義好的類創建一個對象Love
15 myCls &rlove = Love; // 定義對象love的別名為rlove
16 // myCls &rmyCls = myCls; 錯誤 我們不能對類進行定義別名
17 int sum = rlove.AddNum(2,3); //定義好後 就可以對別名進行類裡的數據成員調用訪問了
18 cout << sum << endl;
19 cin.get() ;
20 return 0;
21 }
