實質,引用其實質是可用作其他變數的別名的乙個名稱,對引用的操作與對變數
直接操作
完全一樣。;指標的實質是儲存另乙個變數位址的變數
。其區別主要體現在以下幾個方面:
1、引用(reference)時乙個變數的別名,因此不佔記憶體;而指標(point)是乙個整形變數需要占用一定的記憶體大小,通常是以能夠存放記憶體位址為標準,例如32位機器是32位及4個位元組,64位是64位的,即8個位元組;
2、引用中&不是求位址運算,而是起標識作用;
3、不能建立引用的引用,不能建立指向引用的
指標。因為引用不是一種資料型別,所以沒有引用的引用,沒有引用的指標,但可以建立指標的指標;
例如:int n;
int &&r=n;//錯誤,編譯系統把"int &"看成一體,把"&r"看成一體,即建立了引用的引用,引用的物件應當是某種資料型別的變數
int &*p=n;//錯誤,編譯系統把"int &"看成一體,把" *p "看成一體,即建立了指向引用的指標,指標只能指向某種資料型別的變數。
引用與指標的相同之處:
1、型別識別符號都是指目標變數的型別;
2、宣告引用時,必須同時對其進行初始化,指標可以初始化為空,引用卻不可以.
C 中 (指標引用)和 (指標)的區別
很久之前學的c 了,複習一下,指標是乙個存放位址的變數,而指標引用指的是這個變數的引用,眾所周知c 中如果引數不是引用的話會呼叫引數物件的拷貝建構函式,所以如果有需求想改變指標所指的物件 換句話說,就是要改變指標裡面存的位址 就要使用指標引用,在網上看到大佬的 簡單明瞭,如下 include usi...
C 中指標引用和指標的區別
指標 是位址 即記憶體單元的編號 指標變數 是乙個存放位址的變數 指標引用 指的是這個指標變數的引用 眾所周知c 中如果引數不是引用的話會呼叫引數物件的 拷貝建構函式 重新開闢一塊一模一樣的記憶體空間 所以如想改變指標變數裡面存的位址,就要使用指標引用 讀 前請先搞懂 二級指標 指標的指標 指向指標...
C 中指標和引用的區別
引用和指標 相同點 1.都是位址的概念 指標指向一塊記憶體,它的內容是所指記憶體的位址 引用是某塊記憶體的別名。區別 1.指標是乙個實體,而引用僅是個別名 2.引用使用時無需解引用 指標需要解引用 3.引用只能在定義時被初始化一次,之後不可變 指標可變 引用 從一而終 4.引用沒有 const,指標...