C++之指针和引用
指针
几个需要熟记的点:
- 指针是一个变量,它本身代表一个地址,这个地址是它指向的对象的起始地址,
- 指针可以有多级,可以为空,指针初始化之后可以改变指向
- 指针作为参数传递的时候,拷贝的是指针本身的值,这代表形参和实参两者指向的地址相同,但是不是同一个变量,可以通过改变形参指针指向的对象的值来改变实际实参指针指向的对象的值,但是改变形参和实参本身互不影响。
定义
int *p;//定义一个指针
int a;
p=&a;
- 指针的值:就是指针变量的值,指的是指针所指向变量的内存起始地址
- 指针指向对象的值:就是指针P代表的地址上存储的值,这里就是a的值
- 指针的地址:就是指的指针的地址值,就是P的地址值,&p,这个地址代表的内存存储的是P的值,是二级指针,int**。
引用
几个需要熟记的点:
- 引用就是绑定在对象上的一个东西,和这个对象是一个东西
- 引用在定义的时候初始化而且不能为空
- 引用作为参数传递的时候可以通过修改形参的内容影响实参的内容
定义
int a;
int b=&a;
const的情况
单独介绍const。