当前位置: 首页 > news >正文

南京网站设计平台把百度网址大全设为首页

南京网站设计平台,把百度网址大全设为首页,一个网站的制作过程,湖南网络营销外包chrono是C11中新加入的时间日期操作库,可以方便地进行时间日期操作,主要包含了:duration, time_point, clock。 时钟与时间点 chrono中用time_point模板类表示时间点,其支持基本算术操作;不同时钟clock分别返回其对应…

chrono是C++11中新加入的时间日期操作库,可以方便地进行时间日期操作,主要包含了:duration, time_point, clock。

时钟与时间点

chrono中用time_point模板类表示时间点,其支持基本算术操作;不同时钟clock分别返回其对应类型的时间点。

clock

时钟是从一个时点开始,按照某个刻度的计数;chrono同时提供了三种时钟(通过now()获取当前时间点):

  • system_clock:系统时钟,相对epoch(1970-01-01 00:00:00UTC)的时间间隔;

  • steady_clock:单调时钟,只能增长(后一次调用now()得到的时间总是比前一次的值大);一般是相对于系统启动时间的时间间隔;

  • high_resolution_clock:高精度时钟(当前系统能提供的最高精度时钟,很可能就是steady_clock),也是单调的;

需要得到绝对时点的场景使用system_clock;需要得到时间间隔,且不受系统时间修改而受影响时使用steady_clock。

时间显示

在C++20中直接有to_stream直接输出system_clock时钟;但在此之前,只能通过间接的方式来输出:

auto tNow = system_clock::now();
auto tmNow = system_clock::to_time_t(tNow);
auto locNow = std::localtime(&tmNow);
cout<<std::put_time(locNow, "%Y-%m-%d %H:%M:%S")<<endl; // 2019-12-20 19:35:12

system_clock::from_time_t(...)可以把time_t类型时间转换为time_point,便于chrono使用。

运行计时

通过steady_clock/high_resolution_clock可方便的进行计时:

public:explicit XRunTime{bool bStart){if(bStart) Restart();}void Restart(){m_tpStart = high_resolution_clock::now();}double Stop(){return operator()();}double operator()(void){auto tpEnd = high_resolution_clock::now();auto elap = tpEnd - m_tpStart;return (double)elap.count() / std::nano::den; //返回运行的秒数,如1.00345}
}

时间间隔duration

chrono中使用duration模板类来表示时间间隔,并定义了从小时到纳秒的时间间隔。

duration模板

duration使用一个数值(表示时钟数)和分数(ratio)来表示具体间隔。支持基本的算术运算,并通过count()获取具体的时钟数。

template<typename _Rep, typename _Period = ratio<1>>
struct duration
{typedef _Rep   rep;constexpr _Rep count() const{return (_MyRep);}...
private:_Rep  _MyRep;  //时钟计数
};

基准是秒,并依次定义了常用的间隔,如:

typedef duration<long long> seconds;
typedef duration<long long, milli> milliseconds;
typedef duration<long long, ratio<3600>> hours;

不同的时间间隔可以直接进行算术运算,如休眠需要毫秒参数,我们可以封装接收秒与毫秒的接口:

void MySleep(int nSec, int nMillSec){std::chrono::seconds secs(nSec);std::chrono::milliseconds mills(nMillSec);std::this_thread::sleep_for(secs+mills);
}

duration_cast

使用duration_cast可以方便的在不同时间单位间进行转换,如:

auto sec=seconds(123);
auto minu=duration_cast<minutes>(sec);
cout<<sec.count()<<","<<minu.count()<<endl; // 123,2

ratio

ratio是一个分数模板类,第一个参数为分子,第二个参数为分母;通过静态成员可获取:

  • num:分子

  • den:分母

typedef ratio<1, 1000> milli;
typedef ratio<1000, 1> kilo;
cout<<milli::den<<endl; // 1000

http://www.ds6.com.cn/news/25213.html

相关文章:

  • 建设银行手机官方网站下载安装百度搜索量查询
  • 查找网站开发者网络营销外包推广价格
  • 深圳做网站乐云seo费用优惠全网营销公司
  • 做黄色网站被抓了怎么处理b2b外贸接单平台
  • jsp网站连接数据库百度非企推广开户
  • 银川app购物网站制作公司软文代写公司
  • 怎么用ip做网站如何自己创建一个网站
  • 网站建设的软件平台seo网站优化知识
  • 银川兴庆建设局网站南宁seo外包靠谱吗
  • 北京网站设计引流微信hyhyk1seo顾问服务 乐云践新专家
  • 网站 做购物车新网站应该怎么做seo
  • 哪些网站是python做的百度网页游戏排行榜
  • 公司做网站的费用属于什么费用关键词优化seo公司
  • 做网站 传视频 用什么笔记本好关键词排名优化软件价格
  • 偷拍小情侣酒店做爰网站百度爱采购客服电话
  • 安卓手机 做网站seo如何优化图片
  • 东莞机电学校网站建设与管理吴忠seo
  • 有个做图片mv的网站56微信小程序开发流程
  • 阿里云建设网站免费建网站软件下载
  • 旅游网站开发结束语台州seo优化
  • 做向日葵的专业网站软文发布门户网站
  • 做装修网站网络广告名词解释
  • 网络营销平台的优势西安seo全网营销
  • 华北建设集团有限公司oa网站推广的软件有哪些
  • 网站开发快递北京网站制作400办理多少钱
  • ajax网站开发典型实例个人网页设计作品欣赏
  • 西安市政府网站网络营销的特点不包括
  • 网络游戏新规站长工具seo综合查询论坛
  • 成都优化网站分析百度网址大全官网旧版
  • 哈尔滨seo搜索优化公司排名中山seo排名