在C++中,下面函数说明正确的是____

来源:百度知道 编辑:UC知道 时间:2024/06/17 10:52:37
在C++中,下面函数说明正确的是______。
A. void f1( int a = 3, int b, int c); B. void f2( int a, int b = 3 , int c );
C. void f3 ( int a, int b, int c =3 ) ; D. void f4 ( int a, int b, int 3 ) ;

A,B不对,默认参数是不可以在非默认参数前面的,即带默认值的参数必须在后面!!
C,D都对...
但是声明和定义方法不同:
如果函数声明为 void f3(int a,int b,int c=3);
则函数定义必须为
void f3(int a,int b,int c)
{
printf("c=%d\n",c);
return;
}

如果声明为: void f4(int a,int b,int c);
则函数定义可以为:
void f4(int a,int b,int c=3)
{
printf("c=%d\n",c);
return;
}
也可以为
void f5(int a,int b,int c);
void f5(int a,int b,int c)
{
printf("c=%d\n",c);
return;
}

这里f3和f4的函数功能是一样,f5则有所不同.

>>>>>>>>>>>
汗, 如cs525488所说 D是不对的...
错把void f4 ( int a, int b, int 3 ) 看成
void f4 ( int a, int b, int c ) 了........

C
D中 “int 3 ” 定义本身就错误,常量怎么可以定义呢?

D

A、B、C都对,就D不对啊。

我认为是C
因为AB楼上已经说到了
至于D嘛
我认为是不可行的
参考书吧