【问题标题】:Multiple Key pressed in a console application [duplicate]在控制台应用程序中按下多个键[重复]
【发布时间】:2015-12-31 05:30:16
【问题描述】:

我编写了一个基于文本的游戏,我想为两个玩家实现一个新功能 现在,当按下向上箭头和向下箭头之间的一个时,“宇宙飞船”会向上或向下移动 我想复制这个,但同时,我的意思是,我想创建另一个可以移动的宇宙飞船,现在使用“w”和“s”键 我应该如何编写可以检测同时按下的两个键以同时移动船只的代码? 现在我正在考虑使用两个不同的 readKey 但我认为这行不通 有什么建议吗?

【问题讨论】:

标签: c# visual-studio console-application


【解决方案1】:

我会考虑这样一个问题:您是要走并发或并行的道路,即拥有多个线程、竞争条件和可能的死锁,还是要将您的程序保持在一个线程并按顺序处理事情。

您对软件中的多线程、并发、互斥、锁和其他结构以防止问题的熟悉程度如何?


多线程可能是一个非常高级的主题,因为您似乎仍在习惯循环和条件。添加线程和锁会使事情变得非常复杂。

【讨论】:

  • 我四个月前在学校开始编程,我已经在一个新线程中提问,因为我没有找到适合我的解决方案。我只用一段时间来管理我的游戏,我不能放任何其他东西,比如 while ecc .. 所以我正在寻找专门用于控制台应用程序而不是 Windows 窗体的东西
猜你喜欢
  • 2015-11-15
  • 2013-12-07
  • 2011-05-26
  • 2021-12-16
  • 1970-01-01
  • 2018-04-06
  • 2012-08-28
  • 2023-03-14
相关资源
最近更新 更多