boost计时器相关的类有三个:boost::timer boost::progress_timer(继承自boost::timer) boost::progress_display
boost::timer
头文件:<boost/timer.hpp>
在定义的时候就开始计时,需要截止的时候调用boost::timer::elapsed()获取从计时开始到目前为止的秒数。如果需要重新计时,可以使用boost::timer::restart()方法。
boost::progress_timer
头文件:<boost/progress.hpp>
boost::progress_timer继承自boost::timer,使用更简单, 增加的一点功能就是在析构的时候自动输出所经过的秒数,保留两位小数。可以利用块代码中临时变量的析构特性,计算一个代码块中的执行时间。
boost::progress_display
头文件:<boost/progress.hpp>
boost::progress构造函数中需要一个expected_count整数作为进度条达到100%时的最大数。
然后这个类重载了operator+= operator++用来增加进度条的大小。成员函数count()返回当前的计数,当计数达到expected_count()时,进度达到100%.
我们以boost::progress_timer 的使用为例
实验如图:
代码如下: