1.内联函数的定义
内联函数在定义时与普通函数基本一致,只是在函数值的类型前加”inline“关键字,定义方法:
inline 函数值的类型 函数名 (形参及其类型列表)
{ 函数体 }
本人自学,教材可能有点老,有问题的话求大家指正!!!谢谢!!!
2.内联函数与普通函数的区别和联系
- 定义内联函数时增加了inline关键字;
- 两者在程序中调用的方式和方法相同;
- 当程序调用一个内联函数时,将该函数的代码直接插入到调用点执行。所以,调用过程中不存在程序流程的跳转和返回问题;普通函数反之;
- 从调用机理看,内联函数可以加快程序代码的执行速度和效率并减少调用开销,但是增加了程序代码。
3.内联函数的限制
- 内联函数的函数体内不能含有复杂的结构控制语句,如果含有,则编译程序将该函数视该函数同普通函数那样产生函数调用代码;
- 递归函数不能被用做内联函数;
- 内联函数中不能说明数组;
- 内联函数一般适合于只有1~5行语句的小函数。
例题:定义一个求两个整数中较小值的函数min(),要求定义成内联函数,然后在main函数中进行调用。
1 #include<iostream>
2 using namespace std;
3
4 inline int min(int a, int b){ return a<b?a:b;}
5
6 int main()
7 {
8 int a=2;
9 int b=7;
10 int c=4;
11 cout << "a,b:" << min(a,b) << endl;
12 cout << "b,c:" << min(b,c) << endl;
13 cout << "c,a:" << min(c,a) << endl;
14 return 0;
15 }
16
17 //菜鸟,求大家批评指教,代码编写习惯和规范等等!!!谢谢!!!
运行结果如下:
a,b:2
b,c:4
c,a:2
本人自学,教材可能有点老,有问题的话求大家指正!!!谢谢!!!
原文链接: https://www.cnblogs.com/MichaelBin/p/4513186.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/216324
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!