指標和引用的區別

2021-10-21 22:57:13 字數 521 閱讀 5913

指標:指標的值是乙個位址,指向乙個記憶體單元;可以為空值,可以改變值

引用:引用跟原來的變數實質上是同乙個東西,只不過是原變數的乙個別名而已,不可為空,不能變值

sizeof:sizeof引用為物件大小,sizeof指標則為指標自己的大小。

自增操作(++)

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

必須使用引用的地方:operator = 的返回值必須是 a&;

(p1 = p2) = p3;p1只得到了p2的內容,並沒有得到p3的內容,這是因為執行(p1 = p2)後,因為返回的是物件(乙個臨時物件,p1的乙個拷貝),不是引用,所以此時p1不在後面的『=p3』的操作中,而是p3對乙個臨時物件賦值,所以p1的內容保持不變(等於p2)。

引用有型別檢查

指標p指向常量字串「world」(位於靜態儲存區,內容為world\0),常量字串的內容是不可以被修改的。

return語句不可返回指向「棧記憶體」的「指標」或者「引用」,因為該內存在函式體結束時被自動銷毀。

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

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

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

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

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

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