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

C++语言 码拜 8年前 (2016-09-22) 3927次浏览
Visual Studio调试C++程序中出现error C2668: “fabs”: 对重载函数的调用不明确
fabs提示错误 有多个重载函数fabs实例与参数列表匹配
sumr+=(long)fabs(pr1 – pr2);
sumg+=(long)fabs(pg1 – pg2);
sumb+=(long)fabs(pb1 – pb2);
其中 p1,p2,pr1,pr2,pg1,pg2,pb1,pb2为BYTE型
问一下这是怎么回事?
解决方案

20

sumr+=(long)fabs((long)pr1 – (long)pr2);

20

fabs 缺省参数是 double 类型的
不论C,C++ 浮点函数  double 类型是没问题的
其他,要么重载的,要么扩展的。

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明error C2668: “fabs”: 对重载函数的调用不明确
喜欢 (0)
[1034331897@qq.com]
分享 (0)