Описание тега ambiguous-call
Ambiguous call is a situation, when compiler cannot deduce from the passed parameter types, which version of function or method shall it use.
Ambiguous call happens, when the parameters can be converted in many ways, such that they fit to more than one overload of a function. For example:
void f(float f)
{
}
void f(double d)
{
}
Passing an int value to this function will cause an ambiguous call compiler error, because int
can be converted both to float
and to double
while the compiler is not able to choose the overloaded version of function uniquely.