老小孩 发表于 2014-1-16 16:07:36

c++中 这是哪门子错误。。。

本帖最后由 老小孩 于 2014-1-16 16:10 编辑

#include<iostream.h>
int A(int a,int b)
{
      return a+b;
}
char A(char a,char b)
{
      return a+b;
}
float A(float a,float b)
{
      return a+b;
}
void main()
{
      cout<<A(4.5,6.6);
}

上面的代码错了,然后这样写他就对了
#include<iostream.h>
float A(float a,float b)
{
      return a+b;
}
void main()
{
      cout<<A(4.5,6.6);
}编译器用的vc6.0

五号智能 发表于 2014-1-16 16:57:40



#include<iostream>
using namespace std;
int A(int a,int b)
{
        return a+b;
}
char A(char a,char b)
{
        return a+b;
}
float A(float a,float b)
{
        return a+b;
}
void main()
{
        cout<< A(4.5f , 6.6f);

当常量小数做为表达式的一部分时,它被缺省认定为double .所以要以f来标记它是单精度小数,不然它会找不到它的重载函数,因为没 有double型的重载函数
千万不要忘记结贴啊~~~~~~~~~~~
页: [1]
查看完整版本: c++中 这是哪门子错误。。。