即日起在codingBlog上分享您的技术经验即可获得积分,积分可兑换现金哦。

Kotlin初步入门基础知识教程-内联函数

编程语言 qhshiniba 71℃ 0评论
本文目录
[隐藏]

内联函数

1.定义

内联和正常函数的区别不在于定义函数的异同点。定义的时候只需要加一个标识,就可以让正常函数变为内联函数。实际两者的区别是在实际执行时的处理机制上。内联是耗用性能低,比正常函数少了压栈和出栈的操作,是一种以空间换时间的方式。当函数体少,以及被频繁调用的函数才适合被定义为内联函数

关键字:inline

inline fun lock<T>(lock: Lock,body: ()-> T): T {
    //...
}

2.noinline

该关键字定义非内联函数,为啥还要专门这样定义。这是为了给内联函数传递函数参数时,为了标识这个函数非内联而添加的。

inline fun foo(inlined: () -> Uint, @noinline notInlined: () -> Unit) {
    //...
}

转载请注明:CodingBlog » Kotlin初步入门基础知识教程-内联函数

喜欢 (0)or分享 (0)
发表我的评论
取消评论

*

表情