2017-09-09 112 views
-5

我需要比較存儲在同一類的兩個不同實例中的變量,並且它必須返回一個布爾值。如何比較同一類的不同實例中的變量?

我想比較辣椒和鹹味的年齡,但不知道如何去做。 這是我第一次發佈,所以如果它不清楚讓我現在。我想了解如何使用此頁面進行幫助和學習。

有人提到使用'這個'指針不知道如何工作。

class dog 
{ 
dog(); 
dog(int yearsOld); 

bool sameAge(const dog& compareAge); 

private: 
int yearsOld; 
} 

dog pepper(7); 
dog salty(9); 

bool dog::sameAge(const dog& compareAge) 
{ 
if(yearsOld == compareAge.yearsOld) 
{ 
    return true; 
} 
return false; 
} 



sameAge(salty) 
+0

你是什麼意思的「兩個不同的孩子班」?這裏沒有父母和孩子的課,只有一堂課'狗'。兩個對象都在同一個類中。 – Barmar

+0

您的術語是錯誤的。那些不是「孩子班級」,如果是同一班級的狗,它們是兩個不同的**實例。 – Galik

+0

感謝修正Galik。我仍然遇到如何正確編碼這個問題。 –

回答

1

您的比較代碼很好。問題是你沒有正確調用函數。你需要通過一個對象調用成員函數。否則,它將如何知道它應該與pepper比較?

if (pepper.sameAge(salty)) { 
    // do something 
} 

這是所有面向對象編程的基礎 - 通過對象調用方法。

+0

謝謝Barmar !!!! –

+0

是的,這是我失蹤。 我把它放在我的Main.cpp文件中。 當然,我的任務要複雜得多,但這是缺失的部分。 我再次感謝你,先生。 @Barmar pepper.sameAge(鹹味) –

相關問題