gpt4 book ai didi

c++ - 如何在使用 C++ 创建的测验程序中插入倒数计时器?

转载 作者:行者123 更新时间:2023-11-30 00:58:00 25 4
gpt4 key购买 nike

5分10题全部在规定时间内作答。所以应该显示每个问题所消耗的时间 n 剩余时间。有人可以帮忙吗?

最佳答案

可移植的 C++ 解决方案是使用 chrono::steady_clock 来测量时间。这在标题中的 C++11 中可用 <chrono> , 但在 <tr1/chrono> 的 TR1 中很可能适用于旧版编译器或 boost.chrono .

稳定的时钟总是以“尽可能均匀”的速度前进,这是多任务多线程平台上的一个重要考虑因素。稳定时钟也独立于任何类型的“挂钟”,例如系统时钟(可以随时任意操纵)。

(注意:如果 steady_clock 不在您的实现中,请查找 monotonic_clock。)


<chrono> types 使用起来有点麻烦,所以这里有一段代码示例,它返回一个稳定的时间戳(或者更确切地说,来自您喜欢的任何时钟的时间戳,例如 high_resolution_clock ):

template <typename Clock>
long long int clockTick(int multiple = 1000)
{
typedef typename Clock::period period;
return (Clock::now().time_since_epoch().count() * period::num * multiple) / period::den;
}

typedef std::chrono::monotonic_clock myclock; // old
typedef std::chrono::steady_clock yourclock; // C++11

用法:

long long int timestamp_ms = clockTick<myclock>();         // milliseconds by default
long long int timestamp_s = clockTick<yourclock>(1); // seconds
long long int timestamp_us = clockTick<myclock>(1000000); // microseconds

关于c++ - 如何在使用 C++ 创建的测验程序中插入倒数计时器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7056619/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com