chi*_*n s 9 c++ visual-studio-2010
我使用时收到上述错误
double x = log10(100);
Run Code Online (Sandbox Code Playgroud)
我在其他类中使用它,在同一个项目中它并没有显示此错误.
我如何解决它?
非常感谢
Chintan
Dav*_*eas 19
该错误通常表明没有为功能多于一个的过载log10和他们都不是更好的比别人那个特定的呼叫.例如,重载可能需要float和double:100是int可以转换为任何一个并且转换是等效的,因此编译器无法确定最佳选项是什么.
您可以显式强制转换为其中一个重载:
double x = log10( 100. ); // 100. is a double
float y = log10( 100f ); // 100f is a float
int i = 100;
double z = log10( static_cast<double>(i) ); // or cast
Run Code Online (Sandbox Code Playgroud)