将带有 std::cout C++程序转换为 NCurses / CDK

Convert C++ Program with std::cout to NCurses / CDK

本文关键字:NCurses CDK 程序转换 cout std C++      更新时间:2023-10-16

我有一个用C++编写的大型程序,在很多地方都使用了std::cout。我正在构建一个 NCurses 版本,std::cout破坏了该接口。

有没有办法将控制台输出从 std::cout 重新路由到 cdk_swindow 之类的东西?

执行此操作的一种简单方法是覆盖<<运算符。这样,在您的情况下,您可以使用cdk_swindow

我补救std:cout在 ncurses 框架中不起作用,我使用 printf function ,您使用带有sedregex并将您的 std:cout 转换为 printf function .但无论如何,它都是硬代码和肮脏的。

我会看看CDK示例(http://invisible-island.net/cdk/)

由于CDK"接管"了一个Xterm,你可能想要创建一个包装函数,将过去进入控制台的文本喷出到CDKVIEWER之类的东西中。