所以,我读这提振文档,但我仍然不知道怎样做这样简单的事
int main() {
//stuff
startTimer();
// do stuff
int i =getTimerValue();
//stuff
}
Run Code Online (Sandbox Code Playgroud)
所以要获得我已经完成的东西的执行时间.怎么办这样的事情?
log*_*og0 19
使用 boost::timer
#include <boost/timer.hpp>
int main() {
boost::timer t; // start timing
...
double elapsed_time = t.elapsed();
...
}
Run Code Online (Sandbox Code Playgroud)
请注意,a的destuctor boost::progress_timer将显示时间.因此,如果您的目标只是显示函数中间经过的时间,请使用范围.
int main() {
{
boost::progress_timer t; // start timing
...
} // elapsed time displayed here when t is destructed
...
}
Run Code Online (Sandbox Code Playgroud)
替换为
#include <boost/progress.hpp>
void function()
{
progress_timer t; // start timing
// do stuff
return 0;
}
Run Code Online (Sandbox Code Playgroud)
你会得到你想要的东西,printf但不会使用.
定时器在构造时开始并在销毁时显示(即在fn出口处).这是在C++中执行作用域任务(计时,锁定等)的典型RAII方式.
| 归档时间: |
|
| 查看次数: |
15165 次 |
| 最近记录: |