递归的实现和内存问题

如图,有这样一个使用递归的Age函数。 当调用这个函数时,在栈中为它分配了一块内存,实际就是为变量n分配了一块内存,因为还没有到达边界值,所以会一直调用自己,那么就会一直产生新的变量,又要为新的变量分配内存,而不会覆盖在一开始的内存上。 当返回一个值一后,函数才意味着执行完,内存才会被释放,也就是说,如图,对递归来讲,只有执行到边界时,才开始返回值,当数据很大时,这需要大量的内存,也会消耗相对较多
相关文章
相关标签/搜索