c++ - C++中退出递归栈

标签 c++ recursion

有什么办法可以完全退出c++中的递归栈。例如,我正在使用 recussion 搜索一些目标状态,当我发现只需打印它并从所有 recussion 堆栈中出来时。

最佳答案

最直接的方法(这在风格上是否是最好的值得怀疑)可能是通过将递归函数包装在 try/catch block 中,然后通过抛出包含计算结果的某种自定义异常退出。这将自动将您的堆栈展开到您的 try/catch block 的级别,然后您可以从那里继续。

关于c++ - C++中退出递归栈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8620441/

相关文章:

c++ - 按值传递结构是否被压入堆栈?

c++ - 主窗口应该是全局变量吗?

algorithm - 找出递归函数的模式

javascript - 递归 - Node 内存不足

java - 如何在java中的递归函数中创建数组

c++ - C++ 无法识别头文件

c++ - 使用 boost::asio::generic::raw_protocol::socket 时 OS (Linux) 不添加第 2 层 header

c++ - 对 C++ 中的基本递归感到困惑

c++ - 如何在 go 中使用 .lib 和 .dll 文件调用预构建的 API?

scala - 在 Spark 上递归构建决策树时,是否需要保存中间数据子集?