const关键字的时候,是为了保证在程序运行过程中,数据不能够被更改。
class Sales_item{
public:
double getprice() const;
// Sales_item() const { price = 0.0}; error
Sales_item() { price = 0.0};
private:
double price;
};
因为构造函数只是用来初始化对象的数据成员,没有返回值,构造函数形参表后面不可以有const。普通函数有可以有返回值,故可以将普通函数定义为常量成员函数,同时也是为了防止函数内部修改成员变量。