122Ml 发表于 2023-9-19 19:45:46

关于this指针

已知以下代码:
#include <iostream>

class MyClass {
private:
    int value;

public:
    void setValue(int value) {
      this->value = value;
    }

    void printValue() {
      std::cout << "Value: " << this->value << std::endl;
    }
};

int main() {
    MyClass obj;
    obj.setValue(42);
    obj.printValue();

    return 0;
}

请问其中的语句:
this->value = value;
该如何理解?

isdkz 发表于 2023-9-19 19:45:53

在C++中,this是一个关键字,它是一个指向当前对象的指针。在上述代码中,this指针用于区分成员变量value和函数参数value。由于它们的名称相同,使用this指针可以明确指出我们想要访问的是成员变量value。因此,this->value = value;表示将函数参数value的值赋值给当前对象的成员变量value。

122Ml 发表于 2023-9-19 19:52:14

isdkz 发表于 2023-9-19 19:45
在C++中,this是一个关键字,它是一个指向当前对象的指针。在上述代码中,this指针用于区分成员变量value和 ...

感谢!
页: [1]
查看完整版本: 关于this指针