日期时间
C++一直以来缺乏对时间和日期的处理能力,而时间和日期又是现实生活中经常遇到的,C++程序员不得不求助于C,使用笨拙的结构和函数(struct tm,time())。而现在Boot使用timer和date_time库完美的解决了这个问题。
Timer是一个很小的库,提供简易的度量时间和进度显示功能,可以用于性能测试等需要计时的任务,对于大多数的情况它足够用。Timer库包含3个组件:分别是计时类timer,progress_timer和进度指示类progress_display。
timer计数器
#pragma once
#include <boost/timer.hpp>
#include <string>
#include <iostream>
#include <conio.h>
using namespace std;
using namespace boost;
void test1()
{
timer t;//声明一个计数器对象,开始计时;timer对象一旦被声明,他的构造函数就启动了计时工作,自后就可以随时用elapsed()函数简单的测量自对象创建后所流逝的时间。
cout<<"max timespan:"<<t.elapsed_max()/3600<<"h"<<endl;//596.521h,不到29天,能够测量的最大时间范围:不到29天
cout<<"min timespan:"<<t.elapsed_min()<<"s"<<endl;//0.001s,1毫秒,测量时间的最小精度1毫秒
cout<<"now time elapsed:"<<t.elapsed()<<"s"<<endl;//0.009s//输出已经流逝的时间
t.restart();
cout<<"now time elapsed:"<<t.elapsed()<<"s"<<endl;//0s//输出已经流逝的时间
}
void test(char t)
{
cout<<"press key====="<<t<<endl;
switch (t)
{
case '1':test1();break;
// case '2':test2();break;
// case '3':test3();break;
// case '4':test4();break;
case 27:
case 'q':exit(0);break;
default: cout<<"default "<<t<<endl;break;
}
}
int main()
{
while(1)
{
test(getch());
}
return 0;
}