引用就是某一變數(目標)的乙個別名,對引用的操作與對變數直接操作完全一樣。
int & rodents = rats;
//實際上是下面**的偽裝表示:
int * const pr = &rats;
//引用rodents與表示式*pr相同。
型別識別符號 &引用名=目標變數名說明:(1)&在此不是求位址運算,而是起標識作用。
(2)型別識別符號是指目標變數的型別。
(3)宣告引用時,必須同時對其進行初始化。
(4)引用宣告完畢後,相當於目標變數名有兩個名稱,即該目標原名稱和引用名,且不能再把該引用名作為其他變數名的別名。
(5)宣告乙個引用,不是新定義了乙個變數,它只表示該引用名是目標變數名的乙個別名,它本身不是一種資料型別,因此引用本身不佔儲存單元,系統也不給引用分配儲存單元。故:對引用求位址,就是對目標變數求位址。&ra與&a相等。
(6)不能建立陣列的引用。因為陣列是乙個由若干個元素所組成的集合,所以無法建立乙個陣列的別名。
(1)在引用的使用中,單純給某個變數取個別名是毫無意義的,引用的目的主要用於在函式引數傳遞中,解決大塊資料或物件的傳遞效率和空間不如意的問題。
(2)用引用傳遞函式的引數,能保證引數傳遞中不產生副本,提高傳遞的效率,且通過const的使用,保證了引用傳遞的安全性。
c語言中引用的用法引用--變數的別名
C語言中的引用
關於引用,其實很簡單,c語言中的引用就是目標或者說變數的乙個別名,對它的操作和對變數的操作一樣。引用的宣告 型別 引用名 目標 變數 名 什麼意思?舉個栗子 int a int pa a 這就使引用的宣告,其實就是給變數取別名。需要注意的是在宣告中 符號並不是取位址的意思,而是宣告引用的識別符號,並...
C語言中引用的用法
引用就是某一變數 目標 的乙個別名,對引用的操作與對變數直接操作完全一樣。引用的宣告方法 型別識別符號 引用名 目標變數名 例1 int a int ra a 定義引用ra,它是變數a的引用,即別名 說明 1 在此不是求位址運算,而是起標識作用。2 型別識別符號是指目標變數的型別。3 宣告引用時,必...
C語言中結構體 自引用 和 相互引用
technorati 標籤 c語言,結構體,自引用,相互引用,self reference,mutual reference 結構體的自引用 self reference 就是在結構體內部,包含指向自身型別結構體的指標。結構體的相互引用 mutual reference 就是說在多個結構體中,都包含...