您好,欢迎来到伴沃教育。
搜索
您的当前位置:首页c++语法————this指针

c++语法————this指针

来源:伴沃教育


  • const int Getage():表示返回值是常量,调用者不能修改返回值。
  • int Getage() const:表示这是一个常量成员函数,函数内部不会修改对象的状态,并且它可以

this 指针的主要特点:

#include <iostream>

class Entity {
private:
    int x;

public:
    Entity(int x) : x(x) {}  // 构造函数,使用初始化列表初始化 x

    void setX(int x) {
        this->x = x;  // 使用 this 指针区分成员变量和参数
    }

    int getX() const {
        return this->x;  // 通过 this 指针访问当前对象的 x
    }

    Entity& increaseX() {
        this->x += 1;  // 增加 x 的值
        return *this;   // 返回当前对象的引用
    }
};

int main() {
    Entity obj(5);     // 创建对象,x 的初始值为 5
    std::cout << obj.getX() << std::endl;  // 输出 5

    obj.setX(10);      // 调用 setX 函数,设置 x 为 10
    std::cout << obj.getX() << std::endl;  // 输出 10

    obj.increaseX().increaseX();  // 连续调用两次 increaseX
    std::cout << obj.getX() << std::endl;  // 输出 12

    return 0;
}

常见应用场景:

  1. 区分成员变量和局部变量: 当成员变量和局部变量(或参数)同名时,this 指针用于明确区分它们。

  2. 返回对象自身: 在成员函数中返回 *this,可以实现链式调用,即多个函数调用连续进行。

  3. const 成员函数中使用: 当成员函数被声明为 const 时,this 指针是 const,意味着该函数不能修改当前对象的状态。

总结:

  • this 指针指向调用当前成员函数的对象。
  • this 可用于区分成员变量和参数或局部变量,并可以返回对象自身以实现链式调用。
  • const 成员函数中,this 指针是指向常量对象的指针,确保成员函数不会修改对象的状态。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- bangwoyixia.com 版权所有 湘ICP备2023022004号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务