c++新手求助

来源:百度知道 编辑:UC知道 时间:2024/06/22 02:42:57
想试试默认参数但是编译不通过。
#include<iostream.h>
f(int);
main()
{
cout<<f(10)<<endl;
cout<<f( );
}
f(int n=10)
{
int i,value=1;
for(i=1;i<=n;i++)
value*=i;
return value;
}

#include <iostream>
using namespace std;

int f(int=10);//在C++中不能隐式转化函数类型,没有类型必须是void,默认参数声明要一致
int main()
{
cout<<f(10)<<endl;
cout<<f()<<endl;//调用了默认参数n=10
}
int f(int n=10)//同声明或者不写默认参数(因为已声明过),否则不被通过
{
int i,value=1;
for(i=1;i<=n;i++)
value*=i;
return value;
}

函数定义不符合标准

那样的隐式调用是不可以的。

函数定义不符