如何在 cin 中限制输入时间限制

How to restrict input time limit in cin?

本文关键字:时间 输入 cin      更新时间:2023-10-16

我想创建一个代码片段,如果你给
输入。。。。好
但是如果你在 3 秒内没有输入,变量应该获取一些默认值(由我们设置)。

我怎样才能制作这样的片段?

也许这段代码有帮助:

#include <iostream>
#include <thread>
#include <chrono>
int getVal(int defaultValue)
{
    int val=0;
    std::thread t1([&](){
        std::cin>>val;
    });
    std::this_thread::sleep_for(std::chrono::seconds(3));
    t1.detach();
    if(val==0)
        val=defaultValue;
    return val;
}
int main()
{
    std::cout<<getVal(123);
}