使用STL C ++或Qt测量计算时间的最佳方法是什么?
我知道ctime,但我知道Qt可以在这里使用。
谢谢!
答案 0 :(得分:5)
Theres QTime课程可以衡量时间,您可以通过start()
启动,然后通过elapsed()
方法检索。
如果你想要更高级的东西,如果你想进入严重的时间变态,你可以去Boost.Chrono。它真的很快就真实了,而且文档有点稀疏(与Boost一样),但如果你需要这样的东西,它真的是最干净,最好的库之一。
这一切都取决于你想做什么,因为“测量计算时间”是一个非常广泛的描述。您真的想个人资料您的申请吗?那么也许分析器工具可能更合适。
此外,如果您只想获得执行程序所需的原始时间,那么Linux中就有time
命令。
答案 1 :(得分:2)
就个人而言,我会使用QElapsedTimer
:
答案 2 :(得分:0)
如果您针对 Windows 进行开发,则可以在WINAPI中使用它:
DWORD start = ::GetTickCount();
calculation();
DWORD result = ::GetTickCount - start;
DWORD result
将包含传递的时间(以毫秒为单位)。
注意:这种测量方式不是精确的。精度在10到16毫秒之间变化。但如果你只是想展示“用5.37秒来计算生命的意义”这样就足够了。