控制台显示在C++;跨平台 使用C++作为跨平台控制台应用程序,有没有办法实现静态和动态变化的显示器,而不是在以前的输出下打印的输出?也就是说,对于简单的棋盘游戏,不是每回合都重新打印棋盘,而是更新单个输出

控制台显示在C++;跨平台 使用C++作为跨平台控制台应用程序,有没有办法实现静态和动态变化的显示器,而不是在以前的输出下打印的输出?也就是说,对于简单的棋盘游戏,不是每回合都重新打印棋盘,而是更新单个输出,c++,cross-platform,console-application,C++,Cross Platform,Console Application,编辑:好吧,unicode不是完全必要的,我只使用标准EN-GB键盘上显示的字符 我会研究一些注释,尽管我想知道C++中是否有一些东西可以帮助我实现这一点。如果你愿意,可以叫我无知,但我只是想知道。我想这就是你要找的。ConsoleUI的终端包装器,跨平台。它允许您写入虚拟屏幕缓冲区,并控制刷新的时间和方式。它对该缓冲区进行内部簿记,并且只刷新已更改的字符。Curses是在连接速度很重要的时候设计的,所以终端刷新操作是以一种智能的方式进行的 SO上有一个ncurses标签,因此您可以在这里找到许

编辑:好吧,unicode不是完全必要的,我只使用标准EN-GB键盘上显示的字符

我会研究一些注释,尽管我想知道C++中是否有一些东西可以帮助我实现这一点。如果你愿意,可以叫我无知,但我只是想知道。

我想这就是你要找的。ConsoleUI的终端包装器,跨平台。它允许您写入虚拟屏幕缓冲区,并控制刷新的时间和方式。它对该缓冲区进行内部簿记,并且只刷新已更改的字符。Curses是在连接速度很重要的时候设计的,所以终端刷新操作是以一种智能的方式进行的


SO上有一个ncurses标签,因此您可以在这里找到许多关于细节的信息。

您可以查看以下内容。我认为有针对Windows的库。问题#1:是否需要unicode支持?请注意,您必须在Windows上使用unicode或类似的库来修改此问题。不过,它的工作原理几乎与ncurses完全相同,所以大部分链接器参数都必须更改。那么,就不会有完整的跨平台实现了吗?使用不同平台的独立库是否是实现这一目标的唯一方法?根据您的要求,您可以在Windows下使用cygwin,除非您确实需要使用正版Windows控制台。pdcurses是curses的实现,ncurses是“新”curses,但实际上,它们的行为方式基本相同,从功能原型到功能都相同。移植意味着只需更改为(不要在标题名上引用我的话:p)并将库更改为链接。