什么是内联函数?

内联函数的定义很简单,就是在一般的函数定义前面加上inline关键字。理解内联函数要把握的几点:

1、函数的一大功能就是代码重用。把某些代码写成函数,就是为了重用这个目的。一般将较短小的代码写成内联函数。

2、但是将代码写成函数有个缺点,就是开销增大了。几条顺序执行的代码如果封成函数,那么需要增加额外开销如:用前要先保存寄存器,并在返回时恢复;复制实参;程序还必须转向一个新位置执行。

3、把函数写成内联函数,可以拥有第一点的优势并且避免第二点的缺点。因为内联函数不是函数调用,内联函数的意思是在调用点上内联地调用,是直接用内联函数里的代码替换函数调用的代码。例如:

cout << shorterString(s1, s2) << endl;  //(shorterString()函数是一个内联函数)
相当于:

cout << (s1.size() < s2.size() ? s1 : s2)
              << endl;
4、内联函数需要在头文件里定义,因为它需要被编译器看见。这是内联函数与函数不一样的另外一个地方。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值