2017-06-18 72 views
0

我正在學習C++書,並試圖測試簡單的編碼循環遊戲戰鬥。 while循環內的開關。錯誤:聲明無法解析重載函數的地址C++

damage = greatsword[0] + player[1] - enemy[2]; endl; 

error: statement cannot resolve address of overloaded function|

我在4個不同的代碼行此錯誤,而每一個具有「損壞」,所以我假定其一些問題,這一點。在將其更改爲攻擊值之前,我已將損壞聲明爲int並將其設置爲0。如果需要,我可以提供更多的代碼。我也嘗試將名稱從x更改爲dmg,以查看這是否是問題

+1

請張貼整個代碼不僅如此行。 另外,爲什麼你有一個endl;在那條線的盡頭? –

+0

不要編輯問題說它已解決。 **接受**答案。 – StoryTeller

回答

0

您有一個尾隨endl;,您可能並不打算包含它。 std::endl是打印到輸出流時使用的函數;通常你會看到cout << ... << endl;,但不應該使用它。

+0

感謝您的回答和解釋。修復它,我想我可以使用endl更多更多 –

0

std::endl,用作流操縱器,實際上是一個函數。

你可能做這個

void f(); // don't need to define f() 

int main() 
{ 
     f; // should be f() to call the function 
} 

實現類似或相關的錯誤消息,以便刪除聲明endl;

+0

謝謝修復它,也感謝您的解釋。 –

相關問題