指针:
指针与引用类似,实现了对其他对象的间接访问,然而指针和引用还有很多不同点。
一:指针本身就是一个对象,允许对指针进行赋值和拷贝操作,而且在指针的生命周期内可以先后指向多个不同的对象。
二:指针无须在定义时赋初值,但会拥有一个不确定的值。
指针定义开头必须为 *,如int *p=nullptr;,这里定义了一个空指针p。
引用不是对象,只是被绑定对象的别名
引用在定义时必须赋初值(绑定到一个对象上)
获取对象内存地址
指针实际存放(指向)某个对象的内存地址,要想获取该内存地址,需要使用取地址符(&)。
使用指针访问对象
若指针已经指向了一个有效对象,则允许使用解引用符*来访问该对象。
指针的赋值
指针的赋值就是令指针存放一个新的内存地址,从而指向了一个新的对象。
int a=100,b=50;
int *p = &a;//指针p指向了a的内存地址,使用&取地址符获得变量a的内存地址
cout << *p << endl; //使用解引用符来获取p指向的对象的内容
p=&b;
cout<< "*p的值为" << *p <<endl;
结果: 100
指针p的值为:50