一、内联函数
1、 inline是由编译决定,使用inline关键字只是申请编译器。
2、 宏函数:(define)省去了自定义函数调用时所需对的形参及函数体里需要分配的空间;省去了函数调用、传参、函数返回、释放等过程(提高运行效率);利用编译时间换取内存空间。
限制:频繁调用且功能简单的函数可使用宏函数。
例: #define ADD(a,b) a+b
3、 内联函数(inline):将函数体里的语句内嵌到函数调用的地方;省去了函数调用、返回等操作;提高了运行效率;利用内存空间换取编译时间。
例:
inline int add(int a, int b)
{
return a + b ;
}
int main()
{
cout << add(5,6) << endl; //此处的add(5,6)为函数直接内嵌,即5+6
return 0;
}
4、 C语言中的inline:凡是inline中修饰函数都会被内嵌到函数调用的地方。
限制:短小简单且不被频繁调用的函数才可使用inline。