4.1 内联函数

来自维基百科的定义:

在计算机科学中,内联函数(有时称作在线函数或编译时期展开函数)是一种编程语言结构,用来建议编译器对一些特殊函数进行内联扩展(有时称作在线扩展)。也就是说,建议编译器将指定的函数体插入并取代每一处调用该函数的地方(上下文),从而节省每次调用函数带来的额外时间开支。但在选择使用内联函数时,必须在程序占用空间和程序执行效率之间进行权衡,因为过多地比较复杂的函数进行内联扩展将带来很大的存储资源开支。另外,还需要特别注意的是对递归函数的内联扩展可能引起部分编译器的无穷编译。

大多数情况下,通过将Lambda表达式内联在使用处可以消除运行时消耗。这些消耗包括函数调用的压栈和出栈。但这些消耗不包括函数体本身所需要的开销,因为函数无论内联与否都会执行函数体的代码。

本质上,内联函数的使用是空间换取时间的过程。