位置:首頁 > 高級語言 > C++教學 > C++引用(參考)

C++引用(參考)

C++的引用變量是彆名,也就是另一個名稱為一個已經存在的變量。引用變量初始化,無論是變量名或引用名可以用於指該變量。

C++引用VS指針:

引用經常和指針混淆,引用和指針之間有三個主要區彆:

  • 不能有NULL引用。必須始終能夠假設一個參考連接到一個合法的一塊存儲。

  • 一旦參考被初始化為一個對象,它不能被改變為引用另一個對象。指針可以在任何時候指向另一個。

  • 在創建時引用必須初始化。指針可以隨時進行初始化。

C++創建引用:

想想一個變量名作為附加到在存儲器中的變量的位置的標簽。那麼想到一個引用作為連接到存儲位置的第二個標簽。因此,可以通過任一原始變量名或參考訪問變量的內容。例如,假設我們有下麵的例子:

int    i = 17;

我們可以聲明引用變量 i 如下。

int&    r = i;

讀取& 聲明作為參考。因此,讀第一個聲明為“r是一個整數引用初始化為i”和讀第二個聲明為“s是一個雙引用初始化到d”。下麵的例子利用對int和double引用:

#include <iostream>
 
using namespace std;
 
int main ()
{
   // declare simple variables
   int    i;
   double d;
 
   // declare reference variables
   int&    r = i;
   double& s = d;
   
   i = 5;
   cout << "Value of i : " << i << endl;
   cout << "Value of i reference : " << r  << endl;
 
   d = 11.7;
   cout << "Value of d : " << d << endl;
   cout << "Value of d reference : " << s  << endl;
   
   return 0;
}

當上述代碼被編譯在一起並執行時,它產生了以下結果:

Value of i : 5
Value of i reference : 5
Value of d : 11.7
Value of d reference : 11.7

引用通常用於函數參數列表和函數返回值。所以,以下是有關C++引用的兩個重要概念,作為一個C++程序員應該很清楚:

概念 描述
引用作為參數 C++支持傳遞引用的函數參數比參數更安全
引用作為返回值 可以從C++函數像任何其他數據類型可以返回返回引用