本文介绍了函数参数默认值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!
问题描述
1.
int Add (int a, int b = 3);
int Add (int a, int b)
{
}
2.
int Add (int a, int b);
int Add (int a, int b = 3)
{
}
两者都有效;这是标准方式,为什么?
Both work; which is the standard way and why?
推荐答案
如果你把声明放在一个头文件中,而定义在一个单独的 .cpp 文件中,并且 #include 来自不同 .cpp 文件的标题,您将能够看到差异.
If you put the declaration in a header file, and the definition in a separate .cpp file, and #include the header from a different .cpp file, you will be able to see the difference.
具体来说,假设:
int Add(int a, int b);
lib.cpp
int Add(int a, int b = 3) {
...
}
test.cpp
#include "lib.h"
int main() {
Add(4);
}
test.cpp的编译不会看到默认的参数声明,会报错.
The compilation of test.cpp will not see the default parameter declaration, and will fail with an error.
为此,默认参数定义通常在函数声明中指定:
For this reason, the default parameter definition is usually specified in the function declaration:
int Add(int a, int b = 3);
这篇关于函数参数默认值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!
The End


大气响应式网络建站服务公司织梦模板
高端大气html5设计公司网站源码
织梦dede网页模板下载素材销售下载站平台(带会员中心带筛选)
财税代理公司注册代理记账网站织梦模板(带手机端)
成人高考自考在职研究生教育机构网站源码(带手机端)
高端HTML5响应式企业集团通用类网站织梦模板(自适应手机端)