很简单,什么是尾部调用优化?更具体地说,有哪些小代码段可以应用,哪些地方不可以,并解释原因?