当我尝试调用一个函数时,我得到一个错误,即"函数不带4个参数"但是我已经检查过并重新检查了,这个函数确实需要4个参数,而且我传递了正确类型和所有内容的参数。这是相关代码:
调用功能:
brain.minimax(board, board.getDisc('c'), board.getDisc('c'), 0);
Brian class中的函数声明:
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。我是否遗漏了一些明显的东西,还是有其他原因可能导致这个错误而不是显而易见的?在此先感谢您的任何帮助
答案 0 :(得分:0)
这可能是一些宏观的废话,可能包括一些狡猾的C头。如果我没记错的话,Windows.h #defines min和max,或类似的东西。
尝试在呼叫站点之前添加#undef minimax,或者检查您喜欢的环境中的标识符以确定它实际上是什么。如果它将其显示为宏,则可以#undef it。