尾调用优化是一个编程语言特性。函数递归调用时,会创建一个新的栈帧(stack frame)。 栈帧用于存储当前函数调用的参数和局部变量。如果函数递归很多次,解释器或编译器可能 会耗尽内存。支持尾调用优化的语言对整个递归调用序列重用同一个的栈帧。像 Python 这样 没有尾调用优化的语言通常会限制函数递归的次数(如数千次)