【发布时间】:2014-03-11 10:22:39
【问题描述】:
我在下面的代码中重载了我的函数:
void function(char x, double y) {
cout << "char, double" << endl;
}
void function(int x, int y) {
cout << "int, int" << endl;
}
int main() {
function('a', 'b');
return 0;
}
当我尝试编译时,它说我:“[警告] ISO C++ 说这些是模棱两可的,即使第一个的最差转换比第二个的最差转换更好”
编译器如何在此处进行隐式转换,从而模糊哪个候选者是正确的?
【问题讨论】:
-
您还忘记了返回类型(默认为
intIIRC)。 -
@Jefffrey 不在 C++ 中,这只是一个错误。
标签: c++