【发布时间】:2017-03-13 10:19:47
【问题描述】:
我有这两个功能
bool checkIfPlayerWon(const F &field){
return checkIfPlayerWon(field, player);
}
bool checkIfPlayerWon(const F &field, int current_player){
player 是我班级的成员 var。
现在我主要调用
if(human_player.help.checkIfPlayerWon(my_field))
和
if(pc_player.help.checkIfPlayerWon(my_field))
现在一切正常,程序按预期工作。但是eclipse给了我警告,函数checkIfPlayerWon是模棱两可的,然后告诉我:
'checkIfPlayerWon' is ambiguous '
Candidates are:
bool checkIfPlayerWon(const playfield &)
bool checkIfPlayerWon(const playfield &, int)
'
为什么日食会这样做?很明显,它应该调用第一个函数,因为它只有一个参数。 gcc编译器搞定了,为什么eclipse不行呢?
【问题讨论】:
-
Eclipse 的 C++ 解析器(CTD 的一部分)还可以,但并不出色。相信你的编译器。我通常最终会关闭它。
-
我觉得它非常有用并且希望它能够工作。也许其他人知道这是一个错误还是如何修复它。