美文网首页Android Kotlin
Kotlin inline 内联函数

Kotlin inline 内联函数

作者: Kael_Zhang的安卓笔记 | 来源:发表于2022-06-16 08:54 被阅读0次

    引言

    Kotlin引入了内联函数,但这并不是Kotlin独有的,早在C++中就有了内联函数这一概念,那究竟什么时内联函数?为什么使用它?

    什么是内联函数

    Kotlin中被 inline 标记的函数为内联函数,内联函数被调用时,会把函数体内的所有代码移至调用处,而并不是通过常规方法调用的方式
    在编译时期,把调用这个函数的地方用这个函数体内的代码进行替换,这是内联函数的核心本质,也是他与常规函数的区别

    为什么使用内联函数

    Kotlin中高阶函数和Lambda表达式的大量使用,使得出现大量的匿名内部类,多了很多类的开销,如果使用内联函数,将会大大减少,提高效率

    内联函数使用场景

    针对内联函数的使用,可以将函数分为两种

    • 普通函数
      此类函数不推荐使用内联函数,不会对效率有所提升
    • 需要传入函数类型对象的高阶函数
      此类函数建议使用内联函数

    总结

    本文并没有代码示例,只是一些理论,如果有疑问,可以对照代码和编译后的字节码,就可以清晰对比inline的作用,或者也可以留言讨论,谢谢!

    相关文章

      网友评论

        本文标题:Kotlin inline 内联函数

        本文链接:https://www.haomeiwen.com/subject/pohzmrtx.html