// 内联函数
// 函数前面添加了 inline 关键字，则此函数为内联函数
// 内联函数只能在当前文件中使用，相当于函数前面加 static

// 内联函数一般用于替换 有参的宏，有参宏经常会出错，而且参数是无数据类型
// 每一次使用内联函数时，都会像有参宏一样，展开一次（内联函数不入栈，运行效率高，编译时会提前处理）
#include <iostream>

using namespace std;

#define ADD(x, y) x + y
// 内联函数
inline int add(int a, int b)
{
    return a + b;
}

int main()
{
    int ret1 = ADD(10, 20) * 10;
    cout << "ret = " << ret1 << endl;

    int ret2 = add(10, 20) * 10;
    cout << "ret = " << ret2 << endl;
    return 0;
}
