[cpp]C++11学习笔记-chrono
来源:互联网 发布:佛教app软件 编辑:程序博客网 时间:2024/05/20 21:46
chrono是一个时间库,提供有时间段,时间点,系统时钟相关功能。
头文件:
#include <chrono>
里面主要三个概念,duration、time_point、clock。
duration
duration表示一段时间。
常见的duration有:(相当于数字和单位)
chrono::hours(1) //1小时chrono::minutes(60) //60分钟chrono::seconds(3600) //3600秒chrono::milliseconds(3600000) //3600000毫秒chrono::microseconds(3600000000) //3600000000微秒chrono::nanoseconds(3600000000000) //3600000000000纳秒
//一小时的表示方法,相当于数字和单位。 auto hour = chrono::hours(1); auto minute = chrono::minutes(60); auto second = chrono::seconds(3600); //输出数字 cout << second.count() << endl; //3600 //单位转换,将时间单位转换为秒数。模板参数为单位,函数参数为原数值,函数返回值为新单位数值。如:1小时=3600秒 auto second2 = chrono::duration_cast<chrono::seconds>(hour); cout << second2.count() << endl; //3600
time_point
time_point表示一个具体的时间点。
//当前时间 auto tp1 = chrono::system_clock::now(); //转换为绝对秒数 cout << chrono::system_clock::to_time_t(tp1) << endl; //获取绝对时间,这里的单位不是秒数,需要做单位转换 auto duration1 = tp1.time_since_epoch(); cout << tp1.time_since_epoch().count() << endl; //转换为绝对秒数 cout << chrono::duration_cast<chrono::seconds>(duration1).count() << endl; //单位转换,转换为小时 auto tp2 = chrono::time_point_cast<chrono::hours>(tp1); cout << tp2.time_since_epoch().count() << endl;
clock
chrono::system_clock 表示当前系统时钟。
chrono::steady_clock 表示稳定的时间间隔,修改系统时间不影响其计时。
chrono::high_resolution_clock 暂时不使用。
操作有:
now() 当前时间time_point
to_time_t() time_point转换为time_t秒
from_time_t() 从time_t转换为time_point秒。
//计算时差 auto start = chrono::steady_clock::now(); //... auto end = chrono::steady_clock::now(); cout << chrono::duration_cast<chrono::microseconds>(end - start).count() << endl;
参考:
http://www.cnblogs.com/jwk000/p/3560086.html
0 0
- [cpp]C++11学习笔记-chrono
- chrono学习笔记
- [C/C++11]_[初级]_[实用时间库chrono]
- C++11 chrono入门
- chrono
- Chrono
- [cpp]c++11学习笔记-moden c++
- [cpp].c++11学习笔记-std thread
- [cpp]c++11学习笔记-std bind
- [cpp]c++11学习笔记-std function
- [cpp]C++11学习笔记-filesystem
- 【C++】【学习笔记】【001】CPP语言与OO思想介绍
- Effective CPP 学习笔记
- 学习cpp的笔记
- CPP学习笔记-1
- CPP学习笔记-2
- CPP学习笔记-3
- CPP学习笔记-4
- C#设计模式
- 一张图了解机器学习特征工程的概念
- c语言(约瑟夫环)2017.4.23
- 孤儿进程与僵死进程
- mysql乐观锁总结和实践
- [cpp]C++11学习笔记-chrono
- 关于Notification中setLatestEventInfo方法已弃用
- SAPUI5 (33)
- PHP实现微信支付功能开发+实例代码
- JavaSE 学习参考:Map容器遍历
- 日常。。。强行续
- 仅存的背包的记忆
- 更换eclipse一般需要的配置修改
- 从文件中读取一个二维矩阵,,然后把非零元素放入链表中,然后用链表输出矩阵