成员函数具有一个附加的隐含形参,即指向该类对象的一个指针。这个隐含形参命名为this,与调用成员函数的对象绑定在一起。成员函数不能定义this形参,而是由编译器隐含地定义。成员函数的函数体可以显示使用this指针,但不是必须这么做。只有一种情况必须在成员函数内部显式引用this:当我们需要将一个对象作为整体引用而不是引用对象的一个成员时,最常见的情况是在这样的函数中使用this:该函数返回对调用该函数的对象的引用。
在普通的非const成员函数中,this的类型是一个指向类类型的const指针。可以改变this所指向的值,但不能改变this所保存的地址。在const成员函数中,this的类型是一个指向const类类型对象的const指针。既不能改变this所指向的对象,也不能改变this所保存的地址。
不能从const成员函数返回指向类对象的普通引用,const成员函数只能返回*this作为一个const引用。