初探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失去意义。

 

 

 

原文地址:https://www.cnblogs.com/mfrbuaa/p/4051734.html