C++ error C2668: “pow”: 对重载函数的调用不明确

怎么改?

panelsize = pow(2,d.aBitsPi*sizeof(RGBQUAD));

第1个回答  2010-03-14
楼主,请看这个:
http://msdn.microsoft.com/zh-cn/library/da60x087.aspx
也许会对你有帮助
第2个回答  2010-03-14
参数传递有问题,看看函数原型,在看下你传的参数本回答被提问者采纳

错误11 error C2668: “pow”: 对重载函数的调用不明确
第一个pow里面的第一个参数是10.0,定义为pow(double , ...)第二个pow里面的第一个参数是10,定义为pow(int , ...)

对重载函数的调用不明确 pow
sum+=pow(-1.0,a+1)*1\/a;

error C2668: "sqrt": 对重载函数的调用不明确 2 IntelliSense: 有多...
b = int(sqrt(double(i)));

error C2668: “sqrt”: 对重载函数的调用不明确
这是因为pixel是整型吧,需要将参数强制装换成(double),结果自然是double了。result = sqrt((double)( pixel[0] - pixel[3] )*( pixel[0] - pixel[3] ) + ( pixel[1] - pixel[2] )*( pixel[1] - pixel[2] ));

error C2668: “sqrt”: 对重载函数的调用不明确?
改成这样 k=int(sqrt((float)m));或者 k=int(sqrt((double)m));vc2008更严格

error C2668: “log10”: 对重载函数的调用不明确 为什么?不是已经进 ...
控制台模式下编译无误。应该是在"stdafx.h"已经声明数学运算函数,去掉cmath声明试试。

error C2668: "sqrt": 对重载函数的调用不明确 2 IntelliSense: 有多...
重载函数二义性,不知道用哪个转换将int转换之后更好。将sqrt调用改为:b = int(sqrt(float(i)));或者 b = int(sqrt(double(i)));

error C2668: “sin”: 对重载函数的调用不明确! error C2668: “c...
include <math.h> define pi 3.14159 int main(){ int x=10;double y,z;while(x<=180){ y=sin(x);\/\/没提示错误 z=cos(x);x+=10;printf("角度:\\t%d\\t正弦:\\t%f\\t余弦:\\t%f\\n",x,y,z);\/\/这里应该是放在循环体内部的 } return 0;} 以上代码在我的VC++6.0上可以正常运...

...error C2668: "floor": 对重载函数的调用不明确 int halfH = floo...
你的m_height本来就是整型的吧,他除完之后自动变成整型的了,所以把m_height改为浮点型的就行了。

C++中“swap2”: 对重载函数的调用不明确
楼主,你代码没问题,可能是编译器的问题,我用的VS2010运行正常 满意请采纳哦!换一个功能好点的编译器吧

相似回答