【例1】:int a; int &ra=a; //定義引用ra,它是變數a的引用,即別名
說明:(1)&在此不是求位址運算,而是起標識作用。
(2)型別識別符號是指目標變數的型別。
(3)宣告引用時,必須同時對其進行初始化。
(4)引用宣告完畢後,相當於目標變數名有兩個名稱,即該目標原名稱和引用名,且不能再把該引用名作為其他變數名的別名。
ra=1; 等價於 a=1;
(5)宣告乙個引用,不是新定義了乙個變數,它只表示該引用名是目標變數名的乙個別名,它本身不是一種資料型別,因此引用本身不佔儲存單元,系統也不給引用分配儲存單元。故:對引用求位址,就是對目標變數求位址。&ra與&a相等。
(6 ) 不能建立陣列的引用。因為陣列是乙個由若干個元素所組成的集合,所以無法建立乙個陣列的別名.
(7)不能建立引用的引用,不能建立指向引用的指標。因為引用不是一種資料型別,所以沒有引用的引用,沒有引用的指標。
例如:int n;
int &&r=n;//錯誤,編譯系統把"int &"看成一體,把"&r"看成一體,即建立了引用的引用,引用的物件應當是某種資料型別的變數
int &*p=n;//錯誤,編譯系統把"int &"看成一體,把" *p "看成一體,即建立了指向引用的指標,指標只能指向某種資料型別的變數
(8)值得一提的是,可以建立指標的引用
例如:int *p;
int *&q=p;//正確,編譯系統把" int * "看成一體,把"&q"看成一體,即建立指標p的引用,亦即給指標p起別名q。
C 中的引用
最近重新看c 看到些以前沒注意的dd,溫故而知新,暫且記下。引用是能自動間接引用的一種指標,即不必使用間接引用運算子 就可以得到乙個引用值。引用可以為變數起別名,它主要用作函式引數以及函式的返回型別。1 引用的定義 如 int i int j i j是i的引用。1 定義引用時,必須立即對它進行初始化...
C 中的引用
引用是c 引入的新語言特性,是c 常用的乙個重要內容之一,正確 靈活地使用引用,可以使程式簡潔 高效。我在工作中發現,許多人使用它僅僅是想當然,在某些微妙的場合,很容易出錯,究其原由,大多因為沒有搞清本源。故在本篇中我將對引用進行詳細討論,希望對大家更好地理解和使用引用起到拋磚引玉的作用。一 引用簡...
C 中的引用
c 中的引用 1.引用作為返回值 c 中沒有高效率的物件返回,所以返回值一定不要是乙個直接的物件,除非是 return new a 這種模式好象在vc 中專門做過優化的.當返回乙個變數時,會產生拷貝。當返回乙個引用時,不會發生拷貝,你可以將引用看作是乙個變數的別名,就是其他的名字,引用和被引用的變數...