我需要一个跨平台的解决方案来清除用C ++编写的Linux和Windows中的控制台。这样做有什么功能吗?另请注意,我不希望最终用户程序员必须更改程序中的任何代码以使其在Windows vs Linux中清晰可见(例如,如果必须在两个函数之间进行选择,则必须做出决定)在运行时或在编译时自主)。
简短的答案:您不能。
更长的答案:使用curses库(在Unix 上为ncurses,在Windows 上为pdcurses)。NCurses应该可以通过程序包管理器获得,并且ncurses和pdcurses都具有完全相同的界面(pdcurses也可以独立于控制台创建窗口,其行为类似于控制台窗口)。
最困难的答案:使用#ifdef _WIN32类似的东西使您的代码在不同的操作系统上有不同的行为。
#ifdef _WIN32