1
我的程序有两个打印函数:一个用于int
,另一个用于float
。在C++中函数重载的困惑
void print(float a){
cout << "float:" << a << endl;
}
void print(int a){
cout << "integer:" << a << endl;
}
每当我打电话print(10)
或print(0)
一个为int
数据类型被调用。但是,当我尝试拨打print(3.5)
时,会出现编译错误。为什么这样?
PS当我只有一个print
函数void print(float a)
然后print(3.5)
工作正常。
'3.5'是一个'double'。尝试'打印(3.5f)'。 – songyuanyao
3.5'也不是'漂浮'吗? –
@MairaMuneer不,这是一个'双';) – Quentin