[5] 指针和引用的区别: 1)指针是一个变量,保存的是另一个变量的内存地址;引用是另一个变量的别名,与原变量共享内存地址 2)指针可以被重新赋值,指向不同的变量;引用初始化后不能更改,始终指向同一个变量 3)指针可以是 nullptr,不指向任何变量;引用必须绑定到一个变量,不能为 nullptr 4)指针需要先解引用才能获取或修改指向的变量的值;引用可以直接使用 5)指针分顶层 const(int *const)指针本身不可变; 和底层 const(const int*)指向指向的对象不可变 引用没有顶层,因为引用本身就不可变,但是有底层const(const int&)