<tfoot id='bshgb'></tfoot>
    1. <i id='bshgb'><tr id='bshgb'><dt id='bshgb'><q id='bshgb'><span id='bshgb'><b id='bshgb'><form id='bshgb'><ins id='bshgb'></ins><ul id='bshgb'></ul><sub id='bshgb'></sub></form><legend id='bshgb'></legend><bdo id='bshgb'><pre id='bshgb'><center id='bshgb'></center></pre></bdo></b><th id='bshgb'></th></span></q></dt></tr></i><div id='bshgb'><tfoot id='bshgb'></tfoot><dl id='bshgb'><fieldset id='bshgb'></fieldset></dl></div>

      <small id='bshgb'></small><noframes id='bshgb'>

        <bdo id='bshgb'></bdo><ul id='bshgb'></ul>

      <legend id='bshgb'><style id='bshgb'><dir id='bshgb'><q id='bshgb'></q></dir></style></legend>

      1. C++中的尾递归

        时间:2023-08-03

        1. <i id='6gYTj'><tr id='6gYTj'><dt id='6gYTj'><q id='6gYTj'><span id='6gYTj'><b id='6gYTj'><form id='6gYTj'><ins id='6gYTj'></ins><ul id='6gYTj'></ul><sub id='6gYTj'></sub></form><legend id='6gYTj'></legend><bdo id='6gYTj'><pre id='6gYTj'><center id='6gYTj'></center></pre></bdo></b><th id='6gYTj'></th></span></q></dt></tr></i><div id='6gYTj'><tfoot id='6gYTj'></tfoot><dl id='6gYTj'><fieldset id='6gYTj'></fieldset></dl></div>

            <small id='6gYTj'></small><noframes id='6gYTj'>

            <legend id='6gYTj'><style id='6gYTj'><dir id='6gYTj'><q id='6gYTj'></q></dir></style></legend>

                <tbody id='6gYTj'></tbody>
                <tfoot id='6gYTj'></tfoot>
                  <bdo id='6gYTj'></bdo><ul id='6gYTj'></ul>
                • 本文介绍了C++中的尾递归的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

                  问题描述

                  谁能给我看一个简单的 C++ 尾递归函数?

                  Can someone show me a simple tail-recursive function in C++?

                  为什么尾递归更好,甚至更好?

                  Why is tail recursion better, if it even is?

                  除了尾递归还有哪些递归?

                  What other kinds of recursion are there besides tail recursion?

                  推荐答案

                  一个简单的尾递归函数:

                  A simple tail recursive function:

                  unsigned int f( unsigned int a ) {
                     if ( a == 0 ) {
                        return a;
                     }
                     return f( a - 1 );   // tail recursion
                  }
                  

                  尾递归基本上是在:

                  • 只有一个递归调用
                  • 那个调用是函数中的最后一个语句

                  而且它并不是更好",除非一个好的编译器可以删除递归,将其转换为循环.这可能更快,并且肯定会节省堆栈使用量.GCC 编译器可以进行这种优化.

                  And it's not "better", except in the sense that a good compiler can remove the recursion, transforming it into a loop. This may be faster and will certainly save on stack usage. The GCC compiler can do this optimisation.

                  这篇关于C++中的尾递归的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!

                  上一篇:如何在 tkinter 中创建模态对话框? 下一篇:什么是可重入函数?

                  相关文章

                  最新文章

                • <i id='mJkJz'><tr id='mJkJz'><dt id='mJkJz'><q id='mJkJz'><span id='mJkJz'><b id='mJkJz'><form id='mJkJz'><ins id='mJkJz'></ins><ul id='mJkJz'></ul><sub id='mJkJz'></sub></form><legend id='mJkJz'></legend><bdo id='mJkJz'><pre id='mJkJz'><center id='mJkJz'></center></pre></bdo></b><th id='mJkJz'></th></span></q></dt></tr></i><div id='mJkJz'><tfoot id='mJkJz'></tfoot><dl id='mJkJz'><fieldset id='mJkJz'></fieldset></dl></div>
                  <legend id='mJkJz'><style id='mJkJz'><dir id='mJkJz'><q id='mJkJz'></q></dir></style></legend>

                  <small id='mJkJz'></small><noframes id='mJkJz'>

                    <bdo id='mJkJz'></bdo><ul id='mJkJz'></ul>
                • <tfoot id='mJkJz'></tfoot>