常对象:不能修改的对象。“只读”。使用const声明,声明时必须初始化。
格式: const 类名 对象名 (初始化列表)
类名 const 对象名 (初始化列表)
const Point p(100,200);
常成员函数
只能访问数据成员而不能设置或修改数据成员。
返回类型 函数名 (形参表)const;
const成员函数只能调用const成员函数(C++不允许const成员函数调用非const成员函数,因为非const函数可能会设置或者修改数据成员的值)
const对象只能调用const成员函数,也是同理。
但const成员函数的调用者可以是const的也可以是非const的。
PS: 声明和定义const成员函数都必须加const,否则编译器会认为这是重载函数。
常数据成员
只读。只能通过构造函数设置,而且必须在初始化列表中进行初始化。