#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;
}