可以预先设置默认的参数值,调用时如给出实参,则采用实参值,否则采用预先设置的默认参数值。
#include "stdafx.h"
#include <iostream>
#include <cstdlib>
#include <cmath>
using namespace std;
int add(int x=5,int y=6)
{
return x+y;
}
int _tmain(int argc, _TCHAR* argv[])
{
cout<<add(10,20)<<add(10)<<add();
system("Pause");
return 0;
}
默认参数值的说明次序:
有默认参数的形参必须列在形参列表的最右侧,即默认参数值的右边不能有无默认值的参数。
e.g. int add(int x=1,int y=5,int z);// 错误
如果一个函数有原型声明,且原型声明在定义之前,则默认参数值应在函数原型声明中给出;
如果只有函数的定义,或函数定义在前,则默认参数值可以在函数定义中给出。