引用和指针
引用是一种更安全的指针
1、引用必须初始化,而指针可以不用初始化
2、定义一个引用变量,和定义一个指针变量其汇编指令是一样的,通过引用变量修改引用内存的值,和通过指针解引用修改指针指向的值,其底层汇编指令也是一样的
先看看定义
这个是引用
这个是指针
大家可以看到他们的汇编指令是一样的。修改值的操作汇编也是一样的。
3、引用只有一级引用,没有多级引用,而指针有一级指针,也有多级指针
4、概念上引用是给一个空间取别名,而指针是自己占有一个空间,这个空间装的是指向空间的地址。
下面展示一下常用的交换函数写法
void swap(int* x, int* y)
{
int temp = *x;
*x = *y;
*y = temp;
}