引用和指標的區別是:1、程式為指標變數分配記憶體區域,而不為引用分配記憶體區域;2、引用在定義時初始化,之後無法改變,指標可以改變;3、指標使用時需要加“*”,引用可以直接使用。
首先指標和引用都是位址的概念,指標指向一塊內存,它的內容就是所指記憶體的位址;引用是某塊記憶體的別名。
(推薦教學:c語言教學)
詳細介紹:
程式為指標變數分配記憶體區域,而不為引用分配記憶體區域。
指標使用時要在前加 * ,引用可以直接使用。
引用在定義時就被初始化,之後無法改變;指標可以改變, 即引用的物件不能改變,指標的物件可以改變。
沒有空引用,但有空指標。這使得使用引用的程式碼效率比使用指標的更高。因為在使用引用之前不需要測試它的合法性。相反,指針則應該總是被測試,防止其為空。
對引用使用「sizeof」得到的是變數的大小,對指標使用「sizeof」得到的是變數的位址的大小。
理論上指標的級數沒有限制,但引用只有一級。即不存在引用的引用,但可以有指標的指標。
int **p //合法 int &&p //非法
引用與 指標的效果不一樣。
例如就操作而言,對引用的操作直接反應到所指向的對象,而不是改變指向;而對指針的操作,會使指針指向下一個對象,而不是改變所指對象的內容。
以上是引用和指標有什麼區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!