繁体   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