1.引用(reference)
引用是对象的别名,定义时需要赋初值,可以通过引用修改对象。
所有引用的类型都要和与之绑定的对象匹配(int引用int)。且引用不能与字面值或者某个表达
式绑定在一起,只能绑定对象(int &a=10 是错误的)。
引用不是对象,不能定义指向引用的指针。
2.指针(pointer)
大部分指针都要与所指对象类型匹配(除了const的情况)。
int *p= nullptr; int *p=0; int *p=NULL; 都是生成空指针的方法。
void指针可以存放任意类型的对象地址。
指向指针的指针:int **p=&a;
对指针的引用 :int *r=0; int *&p=r;
tip:引用和指针的区别
(1)指针本身是一个对象,允许对指针赋值和拷贝,也可以引用指针
(2)指针无需在定义时赋初值,如果没被初始化将有一个随机值
(3)指针可以存放新地址,指向新对象。引用本身并非对象,只能绑定最初值
解引用符* &
除了在定义语句中*和&表示定义的意思,其余的都表示解引用和取地址。
3.const限定符
通过加extern关键字,可在多个文件中共享const常量
顶层const和底层const........
4.decltype类型指示符
选择并返回操作数的数据类型
5.Sales_data类
变量是对象的时候用“.”访问。
变量是对象指针的时候用“->”访问