每个成员函数都有一个额外的、隐含的形参将改成员函数与调用该成员函数的类对象绑定在一起。这个而外的形参就是this,在调用成员函数时,形参this初始化为调用函数的对象的地址。
const成员函数的使用:
double avg_price() const;该声明就是一个const成员函数的声明。其中的const改变了隐含指针this的类型,此时this指针为一个指向const对象的指针,const成员函数不能修改调用该函数的对象。
const对象、指向const对象的指针或引用只能调用其const成员函数,如果尝试用他们调用非const成员函数将会出现错误。
在普通的非const成员函数中,this的类型是一个指向类类型的const指针,可以改变this指向的值,但是不能改变this所保存的地址。早cons成员t函数中,this的类型是一个纸箱const类类型对象的const指针,既不能改变this所指向的对象,也不能改变this多保存的地址。