C++函数参数的默认值


一个函数参数 可以指定一个默认的值 调用函数时 如果不对这个参数传入值则使用默认值,如果对这个参数传入值 则使用传入的值。

#include <iostream>

using namespace std;

int getmax(int x=0,int y=1);//函数声明与实现分离,在函数声明中指定默认值,不要在实现中指定

int main()
{
cout << getmax() << endl;

cout << getmax(99) << endl;

cout << getmax(123,100) << endl;

}

int getmax(int x,int y)
{
return x>y?x:y;
}

c++中函数参数默认值 必须遵循靠右原则

int  getmax(int x,int y=100)
{

}

如果一个参数有默认值 则右侧所有的参数必须都有默认值。

默认值 不要和重载形成冲突

当函数的声明 和 实现分离时 需要在声明 中指定默认值 不要在实现中指定。

综合举例遍历数组内容,默认以逗号隔开

#include <iostream>
using namespace std;
void printarr(int *data,int len=1,char sep=',')
{
cout << '[';
for(int i=0;i<len-1;i++)
{
cout << data[i] << sep;
}
cout << data[len-1] << ']' << endl;
}
int main()
{
int data[5]={9,5,2,7,8};
printarr(data);
printarr(data,3);
printarr(data,sizeof(data)/sizeof(data[0]));
printarr(data,sizeof data /sizeof(data[0]),'$');
}

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
  © 2014-2022 ITdaan.com 联系我们: