我的所有研究都导致没有标准的方法可以做到这一点,但有人必须以某种方式解决这个问题。
长话短说,我需要一个(有效的,我知道它不存在)std :: readline with timeout。我更喜欢跨平台的方式,但我实际上是在为Windows写作,所以如果是nessisary,我会接受。我已经有了一个提升依赖,所以我不介意使用boost。
我沿着boost :: asio的道路前进似乎总是以死胡同结束:例如:
How to asynchronously read input from command line using boost asio in Windows?
结论似乎是你不能在该解决方案中使用stdin句柄。
任何人都有更好的方法吗?