在成员函数中存在。struct和class每个成员函数都隐含一个名为this的指针形参,并且它是该成员函数的第一个参数,当某个对象调用成员函数时,就会把该对象的地址传给被调用成员函数的隐式形参this。
- this是一个指针 ,存放的是当前对象的地址,谁调用这个函数 指向的就是哪个对象
- 一般this用来区分成员变量和函数参数
- 作用域是在类的内部
- 当在非静态成员函数中访问类的非静态成员变量的时候,编译器会自动将对象本身的地址作为一个隐含参数传递给函数
class Person
{
public:string name;string car;string password;void set_car(string car){this->car = car;}void set_password(string s){password = s;//this作为隐含参数}void printf(){cout << name << car << password;}
};