引用是指针的语法糖:
1.引用可以看作是编译器自动完成取地址、解引用的常量指针。
2.引用之所以与指针有区别,是由于编译器约束完成的,一旦编译成汇编语言就和指针一样
从汇编层次来看,引用是通过指针实现的;
对于引用可以看作是常量指针可以这么理解:
const int * a2=&a1;->不可以通过解引用修改a1的值,但是可以修改a2。
int *const a2=&a1;->可以通过解引用修改a1的值,但是该指针只能指向a1的地址
而引用作为变量的别名,且一经初始化就不可更改,那么就意味着引用的变量不允许改变,与常量指针int * const等价,只不过指针分配地址,但是引用不特地分配地址。