指標和引用的區別

2021-08-17 13:23:15 字數 499 閱讀 6331

指標和引用的區別:

1.引用必須初始化即無法定義空引用,指標定義可以不初始化,即空指標或者野指標。

2.引用一旦初始化,無法再引用其他物件,指標則 可以重新指向其他物件即重定向。

3.可以定義指標的引用,但無法定義引用型別的指標變數。

4.可以定義指向指標的指標(n級指標),但只能定義一級引用。

c++11標準下可以定義

int &&y = 10;

表示右值引用;

不像int** y表示二級指標;

5.可以定義存放指標的陣列,但是無法定義存放引用的陣列。

注意:引用即物件的別名,無實體所以無法定義指向引用的指標。但是引用一旦初始化,就可以像其引用的目標一樣使用。

即可以對引用取位址,實際取得是其引用的目標的位址。

如:

int x = 10;

int &y = x;

cout << &x << ' ' << &y << endl;

指標引用和引用指標的區別

c 在傳參的過程中,指標 和指標引用 是有區別的。雖然,我們往往可以通過傳指標然後通過間址訪問來修改指標所指向物件的值,同樣,通過引用也可以直接修改物件的值。但是,當傳指標的時候有乙個問題,就是,我們雖然可以通過指標來修改指標所指向物件的值,但是我們沒有不能直接修改指標的內容 也就是指標變數存放的位...

傳指標和傳指標引用的區別 指標和引用的區別(本質)

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

傳指標和傳指標引用的區別 指標和引用的區別(本質)

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