指標和引用的差別

2022-08-27 21:30:17 字數 499 閱讀 1506

(1)非空區別。在任何情況下都不能使用指向空值的引用。乙個引用必須總是指向某些物件。因此如果你使用乙個變數並讓它指向乙個物件,但是該變數在某些時候也可能不指向任何物件,這時你應該把變數宣告為指標,因為這樣你可以賦空值給該變數。相反,如果變數肯定指向乙個物件,例如你的設計不允許變數為空,這是你就可以把變數宣告為引用。不存在指向空值的引用這個事實意味著使用引用的**效率比使用指標要高。

(2)合法性區別。在使用引用之前不需要測試它的合法性。相反,指標則應該總是被測試,防止其為空。

(3)可修改區別。指標與引用的另乙個重要的不同是指標可以被重新賦值以指向另乙個不同的物件。但是引用總是指向在初始化時被指定的物件,以後不能改變,但是制定的物件其內容可以改變。

(4)應用區別。總的來說,在以下情況下你應該使用指標:一是你考慮到存在不指向任何物件的可能(在這種情況下,你能夠設定指標為空),而是你需要能夠在不同的時刻指向不同的物件(在這種情況下,你能改變指標的指向)。如果總是指向乙個物件並且一旦指向乙個物件後就不會改變指向,那麼你應該使用引用。

指標和引用的差別

指標和引用的區別 主要有以下四個方面 1 非空區別 在任何情況下,都不能使用指向空值的引用。乙個引用必須總是指向某些物件。因此如果你使用一 個變數並讓它指向乙個物件,但是該變數在某些時候也可能不指向任何物件,這時就應該把變數宣告為指標,因為這樣才可以賦空值給該變數。相反,如果變數肯定指向乙個物件,即...

指標和引用的差別

1.非空 在任何情況下都不能使用指向空值的引用。乙個引用必須總是指向某個物件。所以如果你使用乙個變數並讓它指向乙個物件,但是該變數在某些時候也可能不指向任何物件,這時應該把變數宣告為指標,因為這樣就可以賦空值給該變數。相反,如果變數肯定指向乙個物件,比如你的設計不允許變數為空,這時就可以把變數宣告為...

引用和指標的差別,陣列和指標的差別

一 引用和指標的差別 1 引用並不是物件,它僅僅是為乙個已存在的物件所起的另外乙個名字。必須初始化,並且無法改變它繫結的物件,之後每次使用這個引用都是訪問最初繫結的那個物件。2 指標本身是物件,能夠不用初始化,能夠改變指標指向的物件 二 指標與陣列的差別 指標陣列 儲存資料的位址 儲存資料 間接訪問...