型別名 & 引用名 = 某變數名;
比如:
int
& r = n;
// r引用了n,r的型別是int &
某個變數的引用,等價於這個變數,相當於該變數的乙個別名。
引用只能引用變數,不能引用常量和表示式。
t & 型別的引用或t型別的變數可以用來初始化const t & 型別的引用。
const t 型別的常變數和const t & 型別的引用則不能用來初始化t & 型別的引用,除非進行強制型別轉換。
例1:
int n =7;
int& r = n;
r =4
;cout << r;
// 輸出4
cout << n;
// 輸出4n=5
;cout << r;
// 輸出5
初始化後,它就一直引用該變數,不會再引用別的變數。
例2:
double a =
4, b =5;
double
& r1 = a;
double
& r2 = r1;
// r2也引用a
r2 =10;
cout << a << endl;
// 輸出10
r1 = b;
// 用b對r1進行賦值,而r1並沒有引用b
cout << a << endl;
// 輸出5
例3:
void
swap
(int
& a,
int& b)
int n1, n2;
swap
(n1, n2)
;// n1,n2的值被交換
C 學習筆記之 引用
先宣告一下,這裡的內容大多是 c 程式設計思想 中的內容,我最近在學習c 覺得裡面的很多話不錯,另外例子也都自己實驗了一番,有些現象很有趣,希望與大家分享。引用 reference 就像能自動地被編譯器間接引用的常量型指標。常量型指標的含義就是常量修飾指標,即指的地方不變,但所指地方的內容可以改變。...
C 學習筆記之引用
引用的概念 引用的本質 引用的意義 思考點引用是c 中引入的乙個新概念,它是乙個已定義變數的別名。int a 0 int b a 引用在c 中的內部實現是通過常指標來實現的 type a type const a 但又不等價於常指標 區別間思考點1 引用定義時必須被初始化,原因是引用的本質是乙個常指...
c 學習筆記之引用
引用是 c 的新增內容,在實際開發中會經常使用 c 用的引用就如同c語言的指標一樣重要,但它比指標更加方便和易用,有時候甚至是不可或缺的。同指標一樣,引用能夠減少資料的拷貝,提高資料的傳遞效率。引用 reference 是 c 相對於c語言的又乙個擴充。引用可以看做是資料的乙個別名,通過這個別名和原...