1.符号常量:申明时就要赋初值,且在程序运行中不可改变;
a.定义方式 const 数据类型 变量名=常量值 或 数据类型 const 变量名=常量值
b.当数据类型为非指针类型时两种表述方式没有区别,均表示该变量值不可改变
c.当数据类型为指针类型时,有这两种情形:const *p=&var 和 * const p=&var 第一种含义是*p是常量,即不能通过 *p改变var的值,第二种p是常量,即p的指向不可改变,但可以通过*p改变var的值;判读const归属时符合就近原则
2.常对象:与符号常量类似,常对象的数据成员均为常量,常对象不能调用普通成员函数,只能调用常成员函数
3.常成员函数不能修改数据成员的值、不能调用普通成员函数
4.const可以对重载函数进行区分
void print();//普通对象调用
void print()const;//常对象调用