繁体   English   中英

C++ 等价于 Java this

[英]C++ equivalent to Java this

在 Java 中,您可以通过执行this.x = x来引用当前对象。 你如何在 C++ 中做到这一点?

假设这些代码示例中的每一个都是名为Shape的类的一部分。

爪哇:

public void setX(int x)
{
this.x = x;
}

C++:

public:
void setX(int x)
{
//?
}

同一个词: this

唯一的区别是它是一个指针,因此您需要使用->运算符:

void setX(int x)
{
    this->x = x;
}

C++ 等价物是this ,但有一些区别。

这是指向相关对象的指针,而不是引用; 因此,您必须在访问字段或方法之前使用指针解引用运算符。

(*this).method(...)
(*this).field

或者,使用更流行的语法

this->method(...)
this->field    

C++ 等价物是this 也就是说,关键字是一样的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM