//Timer类
#include "stdafx.h"
#include<boost/timer.hpp>
#include<iostream>
#include <windows.h>
using namespace boost;
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
timer t;
//最大计数单位*s
cout<< "time max:"<< t.elapsed_max()/3600<< "h"<< endl;
//最小计数单位*s
cout<< "time min:"<< t.elapsed_min()<< "s"<<endl;
//从timer对象创建到这里,流逝的时间
cout<< "time elapsed:"<< t.elapsed()<< "s"<<endl;
Sleep(3000);
cout<< "time elapsed after 3 seconds:"<< t.elapsed()<< "s"<< endl;
//计时器从新开始计时
t.restart();
cout<< "time elapsed after restart:"<< t.elapsed()<< "s"<< endl;
system("pause");
return 0;
}
//Progress类
#include "stdafx.h"
#include <Windows.h>
#include "boost/progress.hpp"
using namespace boost;
#include <vector>
#include <fstream>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
//vectorg构造
//vector<string> vec(100);
vector<string> vec(1000000, "abc");
//获取当前工作目录
char strPath[MAX_PATH];
memset(strPath, 0x00, MAX_PATH);
GetCurrentDirectory(MAX_PATH, strPath);
strcat_s(strPath, "\\progress.txt");
获取模块完整路径
//GetModuleFileName(NULL, strPath, MAX_PATH);
//文件操作流
ofstream os(strPath);
//进程显示初始化
progress_display pd(vec.size());
vector<string>::iterator iter;
for (iter=vec.begin(); iter!=vec.end(); ++iter)
{
//文件操作流输出
os<< *iter<< endl;
//计数过程中涉及到其他IO流操作,进程显示会出问题,可采取以下方案
//pd.restart(vec.size());
//pd += (iter - vec.begin() + 1);
//进程显示计数
++pd;
}
system("pause");
return 0;
}