c++如何使用延续传递风格
How can C++ use continuation-passing style?
假设在c++中,你对一个递归函数进行了太多的递归调用,并得到了堆栈溢出错误。
如何用延续传递的方式重写以避免堆栈溢出?
我有点难以用c++来描绘这个
这是一个相当开放的问题,但是Eric Lippert写了一个(实际上是两个)相当长的关于这个话题的系列文章。不完全是正确的语言,但它应该还是相当有帮助的,并给出了大致的想法。
虽然在c++中实现CPS似乎只是为了修复单个递归函数而做了很多工作,但当你可以使用一些算法使函数与队列迭代时(你仍然使用基本相同的数据量,但堆的限制要少得多)。
相关文章:
- Qt VTK交互风格的信号到小部件
- 我可以使用条件运算符初始化C风格的字符串文字吗
- Visual Studio 2019:插入多个C++风格的单行注释
- 如何在本地机器上运行c++和javascript客户端代码(hackerbank风格)
- 重载运算符<<采用谷歌 C++ 风格
- C++许多 SFINAE 风格的过载
- 函数参数延续
- 谷歌风格指南(前向分枝部分)
- 如何使用 cmake pack redhat 风格的 rpm,这是主要的和"-devel"?
- 如何用符合C++核心准则的代码替换C风格的字符串解析
- 在c++中的复制构造函数/一个声明语句中的初始化的延续中使用chain方法
- 如何编写一个类似于kernellist_head的c++风格的双链表实现
- 用现代C++STL数据结构替换旧的C风格数组
- 如何确保 C/C++ 代码中不会缺少 doxygen 风格的文档注释?
- C++(Visual Studio)有Java风格的注释吗?
- 如何"Re-Polish"相同风格的QApplication?
- 如何按照 Google C++风格指南连接字符串文字?
- C++内联编译时延续
- 如何为特定的构建风格设置 cpp 文件夹
- c++如何使用延续传递风格