const和指针:左变量右指针(const在左边修饰变量,在右边,修饰指针)
const int* x = 10; // 常量指针(指向常量的指针,指针可变,指针指向的常量不可变)
int* const x = 10; // 指针常量(指向变量的常量指针,指针指向的变量可变,指针不可变)
const int* const x = 10; // 指向常量的指针常量
const和函数:
- 成员函数:(1)成员函数只能读取,不能进行修改操作。(mutable修饰除外)(2)const对象只能调用const成员函数。(调用普通成员函数可能发生修改操作)
- 常量性不同的函数可以重载。
- 用const定义的常量必须在定义的时候初始化,类创建一个const对象时,直到构造函数初始化完成,对象才会获得常量const属性,所以构造函数可以向const对象写值(初始化列表方式)。