C++可以指定函数参数的默认值,规则是必须从右往左指定参数默认值,必须是连续的不能跳跃。默认参数可以在定义函数时指定,也可以在声明函数时指定,但如果在定义与声明都指定就会发生冲突。一般地在头文件的函数声明里指定默认参数比较合理。
C++还新增了内联函数这一概念,在函数前定义inline关键字。内联函数从本意上理解类似带参宏,在引用它的地方内联展开代码,比宏更上一层的是编译器可以检查参数类型。实际上编译器的调试版会忽略inline关键字,把内联函数看作是普通函数方便调试。然而即使在Release版中也不一定会百分百展开代码,想一下参数宏,一般都是调用较为频繁而且代码计算量较小,同样的一个内联函数也应该是在这种情况下内联才会得到应有的效率,如果定义的内联函数递归太深、结构复杂、代码量较大等,编译器不会展开内联而只是当作普通函数对待。所以inline关键字只是对编译器的一种建议,不是绝对定义。
科锐课堂笔记:2017/4/6 函数默认参数与内联
最新推荐文章于 2022-05-05 16:59:59 发布