
尾调用优化:一种编译器或解释器的优化技术;当函数在返回前做的最后一件事是调用另一个函数(或自身)时,运行时可以复用当前调用栈帧,从而让某些递归在空间上表现得像循环,减少甚至避免栈溢出。(常缩写为 TCO)
注:在一些语言与实现中,TCO 是否发生取决于编译器/运行时设置与代码写法。
A tail-call optimized function can recurse without growing the stack.
经过尾调用优化的函数可以递归执行而不会让调用栈不断增长。
With tail-call optimization enabled, the compiler turns many tail-recursive helpers into efficient loops, improving performance and preventing stack overflows in deep recursion.
启用尾调用优化后,编译器会把许多尾递归辅助函数转成高效的循环,从而提升性能,并在深度递归时避免栈溢出。
/tel kl ptmzen/
该术语由三部分构成:tail(“尾部、末尾”)+ call(“调用”)+