我想在我的類定義中使用兩個類對象創建一個函數。我想輸入第一個對象作爲函數的參數,第二個對象作爲被調用的對象例如:ClassObject1.function(ClassObject2)您可以引用在類對象函數中調用的對象嗎?
我的問題是我如何引用被調用的對象, ClassObject1,在函數內?
我想在我的類定義中使用兩個類對象創建一個函數。我想輸入第一個對象作爲函數的參數,第二個對象作爲被調用的對象例如:ClassObject1.function(ClassObject2)您可以引用在類對象函數中調用的對象嗎?
我的問題是我如何引用被調用的對象, ClassObject1,在函數內?
this
是一個指向成員函數被調用的對象的指針。
當您想要返回對該對象的引用或在成員函數內部創建對象的副本時,通常需要this
。
我的問題是我該如何引用被調用的對象,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();
}
該對象是'* this'。所以你可以編寫'(* this).function(ClassObject2)'或者同樣''this-> function(ClassObject2)''但是'function(ClassObject2)'有什麼問題? (在普通的課程中,「this->」暗含在需要的地方)。 – JSF
'this'。你的C++書的前10頁。 – YSC
我不確定這個問題是否真的很清楚。 「這個」不應該從班級自己的成員職能中獲得。我想從OP的說明(也許有些代碼,即使它被破壞)。 – Steve