C++内联函数

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

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月13日 上午9:23
下一篇 2023年2月13日 上午9:23

相关推荐