[英]“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.