在C++中,成员函数的执行需要依赖于一个对象的实例。为了在成员函数中能够方便地引用该对象自身的成员变量或方法,C++提供了一个指向当前对象的指针,即this指针。this指针指向的是当前对象的地址,因此可以通过this指针访问当前对象的成员变量或方法。在成员函数中,可以使用this关键字引用该指针。
在C++中,如果在成员函数中需要返回当前对象自身,可以使用this指针返回本身,即返回当前对象的指针。这样做的意义在于,可以方便地链式调用对象的方法。例如:
class Student{
public:
Student& setName(const string& name){
this->name = name;
return *this;
}
Student& setAge(int age){
this->age = age;
return *this;
}
private:
string name;
int age;
};
Student s;
s.setName("Tom").setAge(18); //链式调用
在上述代码中,类Student中的setName和setAge方法都返回了*this指针,即当前对象的指针,以便可以链式调用这两个方法,并且可以在链式调用中方便地操作对象的多个属性。