引用是乙個變數的別名,故引用在申明的時候必須給初始值,從此他們就建立了「不能離婚的婚姻關係」,改變引用就會改變被引用的原變數
1intmain()
2
引用的實質就是const指標,是為了**看起來簡潔美觀設計的(翁愷說的)
物件導向設計c++-- 浙江大學 -- 翁愷 --國家精品課程(附源**)
稍後繼續,敬請期待......
相同點
都是位址。指標指向的是一塊記憶體的位址,引用指向的是被引用變數的位址別名。
不同點
(1)指標是乙個實體,獨立存在;而引用是乙個別名,必須依賴被引用變數。
(2)指標申明(定義)時可以為nullptr;而引用在宣告(定義)時不能為空,必須指定被引用變數。
(3)指標(此處指非const指標)可以指向其他位址,指標「見異思遷」;而引用自申明(定義)起,不能再指向其他位址,引用「從一而終」。
(4)sizeof大小不同。指標為8(在64位機器中,即指標的大小);引用等於被引用變數的大小。
(5)指標不是類安全的,而引用是(有型別檢查)。
參看文獻
C 學習 引用
int n 7 int r n r 4 cout r 4 cout n 4 n 5 cout r 5定義引用之後,引用和原變數是一回事兒,更改了乙個,另外乙個也就跟著改了 強調引用的幾個概念 double a 4,b 5 double r1 a double r2 r1 r2也引用a,這樣三個量都相...
C 引用學習
引用是為物件起的另外乙個名字,定義的格式為 型別 引用變數名 已定義過的變數名。例如 int a 10 int b a b是a的引用1 乙個變數可取多個別名 2 引用必須初始化 3 引用只能在初始化的時候引用一次,不能改變為再引用其他的變數。定義引用時,程式會把引用的它的初始值繫結在一起,一旦初始化...
C 學習 引用
作用 給變數起別名 語法 資料型別 別名 原名 引用 int a 10 int b a cout a a endl a 10 cout b b endl b 10 b a cout a a endl a 12 cout b b endl b 121,引用必須要初始化 2,引用一旦初始化後就不可以更改...