您的位置:首页 > 其它

默认参数 参数默认值 二三事

2015-12-29 00:00 274 查看
最近的项目里写了含有默认值参数的函数,和小伙伴集成的时候却出了问题,反馈说参数不足,查了一下,总结定义默认值参数的规范:

1,定义:

参数默认值是指,在函数定义时赋予形参指定值。这样在函数调用时,可以不传含有默认值的形参位置对应的实参,以使用默认值。

EG:定义

- void func(int a, int b = 1, int c = 2);

使用

- func(0); // 即 func(0,1,2)

2,规范:

- 若函数有定义和实现,参数默认值在函数定义中写明,并只写这一次。

EG: 定义

- void func(int a, int b = 1, int c = 2);

实现

- void func(int a, int b, int c){ something cool; }

- 参数的默认值可以是函数,常数,全局变量,但不可以是临时变量。

- 一个函数的所有形参中,有默认值的形参必须在没有默认值的形参右侧。

EG: 一个错误形式

- void func(int a = 0, int b, int c = 2);

-使用函数时,传递覆盖默认参数的参数时,顺序也是从左到右,不能跳过。

EG: 上文提到的函数使用一个默认参数只有一种形式

- func(1,2) // 即 func(1,2,2)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: