c++支持默认参数,但是默认参数应该放在参数的最右端。
如float area(float r=6.5);
area()即可调用,或者area(7.5)覆盖默认参数
1
|
一个函数不能既作为重载函数,又作为有默认参数的函数。 |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
#include <iostream> using
namespace std;
int main( )
{ int
max( int
a, int
b, int
c=0); //函数声明,形参c有默认值
int
a,b,c;
cin>>a>>b>>c;
cout<< "max(a,b,c)=" <<max(a,b,c)<<endl; //输出3个数中的最大者
cout<< "max(a,b)=" <<max(a,b)<<endl; //输出2个数中的最大者
return
0;
} int
max( int
a, int
b, int
c) //函数定义
{ if (b>a) a=b;
if (c>a) a=c;
return
a;
} |
1
|
如果函数的定义在函数调用之前,则应在函数定义中给出默认值。如果函数的定义在函数调用之后,则在函数调用之前需要有函数声明,此时必须在函数声明中给出默认值,在函数定义时可以不给出默认值 |