类的内联函数

      程序开发的原则应该是“首先是使它可以工作,然后优化”。

      内联函数可以帮助隐藏类的底层实现,并使成员函数和预处理器宏一样有效。

      C语言中,宏的效率很高,很多情况下模拟了函数的行为,但是其总是隐藏了很多危险。对于C++中类来说,宏的概念作为内联函数(inline function)来实现,并且内联函数是真正的函数。内联函数能在适当的地方像宏一样展开,不需要函数调用的开销。

使用:

      任何在类中声明的函数自动成为内联函数(飞类的函数前面加上inline成为内联函数),但为了使之有效,必须使函数体和声明结合在一起,否则,编译器将它作为普通函数对待。

作用:

      1、内联函数一个作用是提高效率

      2、另一个作用是作为访问函数(access function),隐藏类的具体实现。如set() 和get()之类的小函数,容许读写修改对象内部变量。

限制:

      1、函数太复杂,如任何类的循环都被认为太复杂而不能扩展为内联函数,因为很容易使代码膨胀,而在性能上没有任何显著的改进。

      2、当要获取函数体制的时候,编译器不能执行内联,因为这时编译器必须产生一个函数的地址。


减少混乱:


为了减少混乱,可以在类的声明之外定义,最前面使用关键字inline。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值