初探boost之progress_display库学习笔记

progress_display

 

 

 

 

用途

 

progress_display能够在控制台上显示程序的运行进度,假设程序运行非常耗费时间,那么它能提供一个友好的用户界

面,不至于让用户在等待中失去耐心,甚至怀疑程序的执行是否出了问题。

 

 

 

使用方法演示样例

 

#include <boost/progress.hpp>
#include <iostream>
#include <vector>
using namespace std;
using namespace boost;


int main()
{
std::vector<string> v(100);

progress_display pd(v.size());//申明进度条   參数即为进度条一行的总个数 本例为100

for (auto &x:v)
{
    cout<<x;
    ++pd;                      //循环共100次 每循环一次 pd+1  pd/v.size()*100% 即为进度的百分数
    for(int i = 0 ;i <6000;i++)
    {
        for(int j = 0 ;j<6000;j++);
    }                          //延时 看的更清楚而已
}


return 0;
}

 

 

參数的类型为unsigned long

实验结果为:

 

 

 

 

 

总结

 

progress_display是一个能够显示程序进度的工具,使用也非常easy。

但它是字符界面,不够好看,并且easy被程序中的其它输出打乱显示。

使用时我们必须保证自己的程序不能有不论什么的输出,否则就可能使progress_display失去意义。

 

 

 

 

 

 

posted @ 2014-10-26 10:56  mfrbuaa  阅读(389)  评论(0编辑  收藏  举报