参考自《C++ Primer》
众所周知,引用和指针都允许用户简介的访问对象,本文谈谈这两者的区别:
* 1 引用创建之时必须初始化,且不可修改(即不可让引用指向其他对象,只能通过引用修改其原本的对象);
* 2 对引用赋值,可以修改引用指向的对象; 对指针赋值,修改指针所指向的地址
int main() {
int i = 1;
// 定义引用
int &r = i;
// 定义指针,指针创建时可以不初始化
int *p;
p = &i;
r = 1; // change value by reference
*p = 1; // change value by pointer
int j =10;
r = j; // change i=10
p = &j; // change pointer to j, i=1 still;
}