[英]Error: ambiguous call to overloaded function
float App::fresnelReflectTerm(float etaPos, float etaNeg, float cos_theta_i)
{
float theta_i;
theta_i = acos(cos_theta_i);
...
这将生成“对重载函数错误的歧义调用”,并说有四个选项:
float acos(float fValue)
double acos(double _X)
float acos(float _X)
long double acos(long double _X)
我怀疑问题是第一个和第三个都使用浮点arg并返回浮点值。 但是,谁能给我一个提示,说明如何确定这四个函数的来源(我使用的是Visual Studio),以便例如消除重复项? 或只是给我一个有关如何解决此问题的提示。
您可以在VS Studio中启用“文件列表编译器”选项,因此您将知道在编译过程中包括哪些文件,请参阅此msdn 文章 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.