&在c++中不只是有取位址的意思,還有引用的意思。
引用變數是乙個別名,也就是說,它是某個已存在變數的另乙個名字。一旦把引用初始化為某個變數,就可以使用該引用名稱或變數名稱來指向變數,其實可以把它想像成指標,但又區別於指標。
引用示例:
int& r = i;
double& s = d;
引用很容易與指標混淆,它們之間有三個主要的不同:
1.不存在空引用。引用必須連線到一塊合法的記憶體。
2.一旦引用被初始化為乙個物件,就不能被指向到另乙個物件。指標可以在任何時候指向到另乙個物件。
3.引用必須在建立時被初始化。指標可以在任何時間被初始化。
引用一般作為函式引數或者是返回值使用,在定義函式的時候使用。
例如:
int& add(int& a,int& b)
當引用對乙個const常量進行初始化的時候,c++編譯器會為常量的值分配空間,並將引用名作為這個空間的別名。
本文大部分解釋與**來自 :
C 指標與引用的區別
以前對指標和引用的區別沒有清楚的認識,看了此文之後對指標和引用的區別有了更深刻的了解。特將此文儲存下來,以便日後再讀。指標與引用看上去完全不同 指標用操作符 和 引用使用操作符 但是它們似乎有相同的功能。指標與引用都是讓你間接引用其他物件。你如何決定在什麼時候使用指標,在什麼時候使用引用呢?首先,要...
C 指標與引用的區別
1.非空區別。在任何情況下都不能使用指向空值的引用。乙個引用必須指向某些物件。比如說說下面的程式為錯誤的。int a error 指標可以指向乙個空的變數。int p correct int pp null correct 2.合法性區別。在使用引用之前不需要測試其合法性。相反,指標則應總被測試,防...
C 指標與引用的區別
指標與引用是c 中兩個很重要的概念,它們功能看過去很相似,就是都是間接引用某個物件,那麼我們應該在什麼時候使用指標,什麼時候使用引用呢,下面請允許我慢慢道來 1.永遠不要使用乙個指向空值的引用。乙個引用必須始終指向某個物件,所以當你確定使用乙個變數指向某個物件時,但是這個物件在某些時間可能指向空值,...