C 中指標與引用的區別

2021-10-03 20:08:32 字數 511 閱讀 3986

指標p也是物件,只不過p儲存的資料型別是它所指的物件的位址。可以通過解引用操作符「」來訪問物件的值,即p。

物件有常量(const)和非常量之分,如果指標本身是常量,即指標常量,指這個指標所儲存的位址是不可以改變的。而指向常量的指標的意思是,不能通過該指標來改變這個指標所指的物件。

引用的底層是乙個指標常量,是指標操作的語法糖,加入了一些特性,方便了程式設計師。

引用和指標,在記憶體中都是占用4個位元組(32bits系統)的儲存空間。

指標可以是null,而引用不行,引用必須有乙個其所指的物件

引用不可以將其重新指向另乙個物件

引用的建立、銷毀不會呼叫類的拷貝建構函式和析構函式

由於引用永不為空,所以不需要判斷其是否為空,而指標需要

sizeof引用得到的是所指物件的大小,而sizeof指標得到的是指標的大小

有指標陣列,沒有引用陣列

引用和指標的自增自減操作意義不同,引用自增自減被引用物件的值,指標自增自減記憶體位址

C 中指標與引用區別

1.都是位址的概念 指標指向一塊記憶體,它的值為該塊記憶體的位址。引用是某塊記憶體的別名。1.指標是實體,引用只是乙個別名。2.使用時,引用需要解引用,指標不需要。解引用指獲得該記憶體位址處儲存的值 3.引用從一而終,指標可多變。給引用賦值修改的是該引用所關聯的物件的值,而並不是使引用與另乙個物件關...

C 中 指標引用)與 (指標)的區別

指標傳遞引數本質上是值傳遞的方式,它所傳遞的是乙個位址值。值傳遞過程中,被調函式的形式引數作為被調函式的區域性變數處理,即在棧中開闢了記憶體空間以存放由主調函式放進來的實參的值,從而成為了實參的乙個副本。值傳遞的特點是被調函式對形式引數的任何操作都是作為區域性變數進行,不會影響主調函式的實參變數的值...

C 中指標 與指標引用 的區別

c 中 指標引用 與 指標 的區別 指標是乙個存放位址的變數,指標引用指的是這個存放位址的變數的引用。c 中如果引數不是引用的話,會呼叫引數物件的拷貝建構函式,所以如果有需求想改變指標所指的物件即想要改變指標變數裡存放的位址,就要使用指標引用。下面用乙個測試例子和過程圖結合進行說明 分析 在test...