首页 > 其他 > 详细

函数的默认参数,应该在头文件里声明。

时间:2019-03-22 18:46:07      阅读:339      评论:0      收藏:0      [点我收藏+]

也就是在a.h中,需要有这样的声明:

void f(int x , int y = 0);

 

然后在a.cc中,不要有默认参数的声明。

void f(int x, int y){}

这样子。不能两处同时写默认参数。

 

因为默认参数是给调用者看的,所以放在头文件中。

而如果放在cpp文件中,头文件中没有的话,调用的时候就会出现问题。提示缺少参数。

 

原理:

默认参数这个机制,是编译时刻生效的。编译器在声明中找到那个默认的参数,然后偷偷的补上了那个值。

 

default value不安全,尽量不要用。很容易被人修改默认的值。

函数的默认参数,应该在头文件里声明。

原文:https://www.cnblogs.com/buddho/p/10580294.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!