你能引用一个类对象函数中被调用的对象吗?

时间:2015-12-08 20:58:13

标签: c++ function class

我正在尝试在我的类定义中创建一个使用两个类对象的函数。我想输入第一个对象作为函数的参数,第二个对象作为被调用的对象,例如:ClassObject1.function(ClassObject2)

我的问题是如何在函数中引用被调用的对象ClassObject1?

2 个答案:

答案 0 :(得分:0)

this是一个指针,指向调用成员函数的对象。

当您想要返回对象的引用或在成员函数内创建对象的副本时,通常需要this

答案 1 :(得分:0)

  

我的问题是如何在函数中引用被调用的对象ClassObject1?

关键字this是指向调用该函数的对象的指针。在非静态成员函数中,您可以使用this来引用该对象。

void MyClass::function(MyClass obj2)
{
    std::cout << "The address of the current object is: " << (void*)this << std::endl;

    // Call another member function on the same object.
    this->function2();

}

请参阅more on this pointer