时间

c++一直缺乏对时间和日期的处理能力,boost使用timer,date_timer,chrono完美解决这个问题。

timer

timer类可以测量时间的流逝,是一个小型计时器。

1     timer t;//声明即开始计时
2     cout<<t.elapsed()<<endl;//输出流逝时间

progress_timer

progress_timer会在析构时自动输出时间。

1 //方法1

2 progress_timer t;

3 cout<<t.elapsed()<<endl;

4 //方法2

5 { 6 progress_timer t; 7 }

progress_display

可以在控制台上显示程序的执行进度。

1     vector<string> v(100);
2     ofstream fs("./test.txt");
3     progress_display pd(v.size());
4     for(auto &x:v){
5         fs<<x<<endl;
6         ++pd;
7     }

效果

0%   10   20   30   40   50   60   70   80   90   100%
|----|----|----|----|----|----|----|----|----|----|
***************************************************
缺陷:无法将进度显示输出与程序的输出分离。

改进(并非完美):每次显示进度时重新显示进度刻度

1     vector<string> v(100);
2     ofstream fs("./test.txt");
3     progress_display pd(v.size());
4     for(auto pos=v.begin();pos!=v.end();pos++){
5         fs<<*pos<<endl;
6         //++pd;
7         pd.restart(v.size());
8         pd+=(pos-v.begin()+1);
9     }

 

转载于:https://www.cnblogs.com/betterthanyou/p/9337895.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值