簡體   English   中英

“錯誤:函數沒有4個參數”,但確實有

[英]“Error: function does not take 4 arguments” but it does

我收到錯誤消息,當我嘗試調用一個函數時,提示“函數不帶4個參數”,但是我檢查並重新檢查了該函數,確實帶了4個參數,並且我傳遞了正確的類型和所有內容。 這是有問題的代碼:

調用函數:

brain.minimax(board, board.getDisc('c'), board.getDisc('c'), 0);

Brian類中的函數聲明:

void minimax(Board board, int who, int currentCheck, int iter);

功能定義:

void Brain::minimax(Board board, int who, int currentCheck, int iter)
{
//code
}

我以相同的方式在程序的其他位置調用minimax()(據我所知),它們不會引發任何錯誤。

getDisc()函數在Board類的函數聲明及其定義中均返回int。 我是否遺漏了明顯的東西,或者是否有其他原因使我可能得到的不是該明顯的錯誤? 預先感謝您的任何幫助

這可能是宏大的炒作,可能是通過包含一些狡猾的C標頭。 如果我沒記錯的話,Windows.h#定義min和max或類似的東西。

嘗試在呼叫站點之前添加#undef minimax,或者在您喜歡的環境中檢查標識符以找出其實際含義。 如果將其顯示為宏,則可以#undef。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM