Я две перегруженной функции, как показано ниже:INT и поплавок в функции перегрузки
void print(int i) { ... }
void print(float f) { ... }
Его дает мне эту ошибку для print(1.2);
:
error: call of overloaded 'print(double)' is ambiguous
Может кто-нибудь объяснить мне, почему?
Какое преобразование вы хотите? double -> int или double -> float? – Jarod42
Так получилось, что C++ задает 'double-> int' одинаково допустимый для' double-> float'. Один из них мог быть лучше, чем другой, но это не было принято. – chris
Попробуйте следующее: 'print (1.2f);' – ZDF