首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

c++重载函数无法调用解决方案

2012-05-21 
c++重载函数无法调用[codeC/C++][/code]#includeiostreamusing namespace stdint sum(int ia,int ib){

c++重载函数无法调用
[code=C/C++][/code]
#include<iostream>
using namespace std;

int sum(int ia,int ib){return ia+ib;};
//double sum(double a1,double b1){return a1+b1;};
float sum(float a1,float b1){return a1+b1;};

int main()
{
cout<<sum(3.5,4.6)<<endl;
return 0;
}

我做了一个sum的重载函数,当sum()返回值为float类型时编译报错“ambiguous call to overloaded function”;为double时编译通过,运行正常。难道“3,5和4,6”都不符合float类型?

[解决办法]
单精度浮点型 字面值 应该 加后缀 f,你写成 3.5f,4.6f 编译器就会认为他是单精度浮点型。

热点排行