const和引用的區別

2022-09-04 14:33:20 字數 369 閱讀 3031

1.指標有自己的一塊空間,而引用只是乙個別名;

2.使用sizeof看乙個指標的大小是4,而引用則是被引用物件的大小;

3.指標可以被初始化為null,而引用必須被初始化且必須是乙個已有物件 的引用;

4.作為引數傳遞時,指標需要被解引用才可以對物件進行操作,而直接對引 用的修改都會改變引用所指向的物件;

5.可以有const指標,但是沒有const引用;

6.指標在使用中可以指向其它物件,但是引用只能是乙個物件的引用,不能 被改變;

7.指標可以有多級指標(**p),而引用至於一級;

8.指標和引用使用++運算子的意義不一樣;

9.如果返回動態記憶體分配的物件或者記憶體,必須使用指標,引用可能引起記憶體洩露。

引用 const引用和非const引用

引用構造了物件的乙個同義詞,是c 物件的另乙個名字。在實際程式中,引用的主要作用是作函式的形參。引用是一種復合型別1,它通過在變數名前新增 來定義。在使用引用的情況下,每一種引用型別都關聯到某一其他型別。c 不能定義引用型別的引用,但是可以定義任何其他型別的引用。int a 100 int refa...

指標和引用,const 指標和const 引用

指標和引用是在使用中經常弄混淆的兩個概念。引用 reference 為物件起了另外乙個名字,用符號 表示。name,例如 int i 1024 int ref i 一般在初始化變數時,初始值會被拷貝到新建立的物件中,然而定義引用時,程式把引用和它的初始值繫結 bind 在一起,而不是將初始值拷貝給引...

const引用和普通引用

一 引用所繫結的型別和所引用的物件型別需嚴格匹配。除了兩個例外 1 普通引用必須繫結到物件,不能繫結到常量 int a 3 錯誤 2 const引用 1 初始化const引用允許用任意表示式,只要該表示式的結果能轉化為引用型別即可 2 允許乙個const引用繫結非常量物件,字面值,甚至是一般表示式 ...