每当我尝试制作游戏或需要快速清除屏幕的东西时,我都使用了系统(“CLS”)。我现在知道那不太好用,所以我试着用for循环来快速打印新行。虽然这工作,它看起来很奇怪,不太清楚。我见过人们尝试使用STRING清除屏幕,但每当我尝试它时,它都无法工作。如何有效清洁我的屏幕?如何有效地清除屏幕
回答
没有标准的方法来清除屏幕。但无论如何,实际上清除终端和重绘对于许多游戏来说都会太慢而且很糟糕。
您应该使用您的操作系统的本机终端处理函数或者抽象它们的跨平台库。
我推荐ncurses,这是后者。它基本上提供了一个类似于双缓冲图形API的接口,并处理所有实际的终端转换,因此帧交换尽可能快。
我只是C++的新手,所以我只是在做基本的ASCII游戏,现在还不怎么样,但我已经看到有人用cout << string(“\ n”,100);这是你不能再做的事情,因为我永远无法使它工作 –
@EthanJones打印一百条换行符,将前一帧滚动到视图外(非常像'cls',实际上)。它作为一种技术工作,但正如我所说的那样非常慢。本地终端处理能够实现诸如“只需在(8,15)”处添加大写“O”的操作,并且使得更新速度更快。 – Quentin
谢谢。我想我可能会找到方法来做到这一点,当我开始做图形,但在那之前,谢谢我将看看ncurses。 –
- 1. 清除屏幕
- 2. localStorage清除屏幕
- 3. 如何使用javascript清除屏幕?
- 4. 如何清除SICStus Prolog中的屏幕
- 5. 如何清除串行屏幕?
- 6. 清除Python中屏幕
- 7. C++程序清除屏幕
- 8. 在OpenGL中清除屏幕
- 9. 在Android中清除屏幕
- 10. 在Xcode清除屏幕
- 11. 清除终端屏幕
- 12. tkinter - python 3 - 清除屏幕
- 13. 清除终端屏幕?
- 14. 如何清除屏幕上的所有jqGrid网格?
- 15. OpenGL“运动拖动”效果 - 不清除每一帧的屏幕
- 16. 画布一旦完成屏幕清除
- 17. 清除日食中的屏幕
- 18. 在C++中清除屏幕命令
- 19. AVR C:串行通信清除屏幕
- 20. Java(lwjgl)OpenGL完全清除屏幕
- 21. keystroke清除psql中的屏幕?
- 22. java中的命令清除屏幕
- 23. 清除gnuplot中的命令屏幕
- 24. 在组装中更快地清除屏幕
- 25. As3 - 如何有效清除数组?
- 26. 如何从排序的矢量中有效地清除值?
- 27. Emacs。壳牌如何清洁屏幕?
- 28. OpenGL:如何只清除屏幕的一部分?
- 29. 如何清除屏幕上的旧线条?
- 30. 如何清除我的框架屏幕在Java?
我听说在非Windows平台上使用它应该是坏的,所以我只是想甩掉这个习惯。 –