(6)函数特性(函数参数默认值、函数重载、内联函数)

#include <iostream>
using namespace std;

//函数参数默认值 实参覆盖默认值
//有默认值的参数必须在参数表的最右端
//声明的时候写默认值,定义的时候不写默认值,这样所有的编译器都能通过
//无实参则用默认值,否则实参覆盖默认值

//函数重载 名称相同参数可辨
//在相同作用域内
//用同一函数名定义的多个函数 参数个数和参数类型不同 这样多个函数互称为重载

//内联函数 inline 效率高 有条件 只是一种编译方式,对结果没有什么变化
//编译时将函数体代码和实参代替函数调用语句 节省函数调用时间(尤其是循环调用时)
/*
内联函数是建议性的,由编译器决定
要求逻辑简单(不要有for、while循环之类的)
调用频繁的函数建议使用内联
递归函数无法使用内联方式(即使你写了inline关键字)
*/

inline void fun(int i=0, int j=10, int k=20)
{
	cout << i << j << k << endl;
}
inline void fun(double i, double j=1.2)
{
	cout << i << j << endl;
}
int main()
{
	fun();
	fun(10);
	fun(1.1, 2.3);
	system("pause");
	return 0;
}

猜你喜欢

转载自blog.csdn.net/nuc_sheryl/article/details/81086680