指針和引用都是對另外一個變量的一種關聯,即經過指針和引用能夠使用另外一個變量。而它們最大的區別在於:指針是一個變量,而引用不是。但在c++底層中,引用是經過指針實現的,因此,在實現層面上來講,引用就是指針,可是在c++語法上來講,c++編譯器並不爲引用類型分配內存,因此引用不能爲空,必須被初始化,一旦初始化不能更改引用對象。全部對引用的操做都是對原始對象的操做 。c++
指針是一個變量,它所存儲的就是它所指向的變量的地址,而它同時也有着本身的地址。引用能夠理解爲變量的"小名」,它的地址也就是它引用的變量的地址。也能夠說,指針指向一塊內存,它的內容是所指內存的地址;引用是某塊內存的別名。它們更細緻的區別總結以下:指針
2020-01-10對象