C ++相当于Java
在Java中,您可以通过执行以下操作来引用当前对象: this.x = x
。 你是如何用C ++做的?
假设这些代码示例中的每一个都是名为Shape
的类的一部分。
Java的:
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
; 也就是说,关键字是相同的。