使用时出现上述错误
double x = log10(100);
我在同一个项目中的其他课程中使用过它,它没有显示此错误。
我如何解决它?
非常感谢
钦坦
使用时出现上述错误
double x = log10(100);
我在同一个项目中的其他课程中使用过它,它没有显示此错误。
我如何解决它?
非常感谢
钦坦
该错误通常表明该函数存在多个重载,并且对于该特定调用log10
,它们中没有一个比其他的更好。例如,重载可以采用float
and 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