1、指針是一個實體,是一個變量,只不過這個變量的值存儲的是內存中的一個地址。而引用是變量的別名,指向存儲該變量的內存單元。
2、在訪問指針所指向內存單元的值時,需要對指針做解引用操作。而如果需要訪問引用所指向的變量的值,則直接使用該引用。
3、引用智能初始化一次,不能在再將該引用指向其他變量,即“從一而終”,而指針變量的值則可以多次改變。
4、可以有const指針,但是沒有const引用。
5、可以有多級指針,如二維指針(int **p)等,但是沒有多級引用,(int &&a不能通過編譯).
6、sizeof(引用)得到的是引用所指向的變量的大小,而sizeof(指針)得到的是指針本身的大小,具體的值跟計算機的尋址位數有關。
7、指針可以是NULL,但是引用不能爲NULL,引用必須和變量關聯。