inline 内联函数

在函数调用时像宏定义一样把函数体代码展开,节省了参数压栈,恢复现场等的函数调用的时间空间开销。

与宏定义的区别是,宏定义是在预处理的时候,内联函数是在编译器执行的时候。宏的缺点,不能访问对象的私有成员,容易产生二义性,有时候需要加上括号。

用关键字inline,但是类中的函数不管有没有inline一般默认为内联函数。

要注意使用内联时注意代码的暴露。


内联函数注意:

1递归函数不能定义为内联函数

2含有循环和switch结构的函数不能定义为内联函数,否则编译器也会视为普通函数

3必须先定义后使用,就是不能仅仅在使用前声明,而是要必须声明的同时给出定义的函数体才有效。

4对于包含许多语句的大函数,编译器也会默认为普通函数

4不能进行异常接口声明

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值