学习笔记 内联函数

1.      什么是内联函数?

 

 

内联函数,从形式上看就是普通函数首部前添加了一个inline,形式如下

inline(参数列表)

{

//语句

};

 

2.      为什么引进内联函数?

 

内联函数与普通函数的区别在于,内联函数的调用不会转移程序控制权,而是在调用点处进行”内联”展开函数体,类似于宏展开(区别在于宏展开是由预处理器负责,而内联展开由编译器负责)。这样一来,可避免普通函数调用带来的开销。

 

 

3.      什么情况适合用内联函数?

当代码量只有几行(一般5行以内),语句简单的时候。

因为,如果代码量大,会导致展开后的程序出现大量的重复“内联代码”,会消耗空间。

    

    内联函数一般放置于头文件中。程序中多个源文件关于一个内联函数的定义必须保持一致。

 

4.几点注意事项

   递归函数不能作为内联函数(显然不能,总不能递归展开代码吧)

   含有控制语句和开关语句的不能作为内联函数。

   “inline”只是一个请求,编译器可根据实际情况,选择强制函数为普通函数。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值