C++ 引用 指针
引用: 不是对象,是已有对象的别名,相当于bind对象,初始化必须赋值,一经定义不可改变。
指针:是指针对象,指向对象的地址。
二者都是复合类型(基于其他类型定义的类型)
引用
int b = 1;
int &a = b; //初始化引用a,a 与 b 绑定
a = 3; // 改变a的值也会改变b的值
int &c = a;// 错误,a不是对象,不可以创建引用的引用,引用只能绑定至对象
指针
int *p = &b; // 初始化指针p, p指向b所在的内存地址
int *p2 = p; // 初始值是指向int对象的指针
*p = 3; // * 解引用符,来访问指针指向的对象,表示给p指向的对象赋值3。
int **p1 = p; // 定义一个指向指针的指针,因为指针是一个对象。
// 空指针
int *p1 = nullptr;
int *p1 = 0; // 二者等价
#include cstdlib
int *p1 = NULL;