引用是一种语法现象
这句话的意思是,引用的是由定义在它上的操作决定的,而非具体的实现.
引用即指针,是从实现角度来看得出的结论.事实上,并非所有引用都用指针实现,局部变量的引用是很明显的例子.即使对于函数参数引用而言,如果编译器决定内联,那么也就没必要转成指针.说到底,指针也只是一种语法现象,并不比引用”深刻”或者”底层”多少.
引用是变量的别名
这是对正确理解引用的关键.我们可以变量和别名看成独立的个体,但它们之间存在某种”同步机制”,使得对其中之一的修改将反映到另一个中.或者想象成某个表中的两个不同项目指向同一个编号的记录.
引用与指针的区别
引用总是有所指,它总不为空.虽然可以有强制手段可以扭曲这一性质,但这种做法没有实际意义.
引用总是指向同一变量,具体表现为其地址总是不变的,即原变量的地址,而指针总是指向当前变量的地址或是NULL.