c++ this指针

this指针是c++中的一个关键字,它在类中被自动隐藏了起来。

this指针指向当前对象并且只能用在类的内部使用,通过this指针我们可以访问类中的所有成员(public,protect,private)。

class A
{
public:
    void setb(int b)
    {
        this->b = b;
    }
private:
    int b;

};
int main()
{
    A a;
    a.setb(1);
    return 0;
}

上面代码中,当我们函数参数名称与类中成员名称相同时,我们可以使用this指针加以区分(但是最好在写的时候就不要重名,这里只是示例)。同时当我们创建a对象后,this指针才有意义。因为this指针刚开始并不存在,而是在编译阶段编译器帮我们加到参数列表里的。

c++ this指针_第1张图片

通过上面也可以发现this确实指向对象。

由此我们也可以知道this不能指向static成员函数,因为static成员函数是属于类的,而不属于某一具体对象。

你可能感兴趣的:(c++,c++)