44 | Chrono:C++里的时间和日期
吴咏炜

你好,我是吴咏炜。
从 C++11 开始,C++ 标准就引入了全新的 chrono(来自古希腊语 χρόνος,意为时间)库,解决了时间方面的典型痛点。而到了 C++20,chrono 库进一步得到了强化,弥补了原先的一些不足,并增加了日期方面的支持。这个 chrono 库,在之前的课程中我也零星地用过,但一直没有系统地进行描述。今天,我就来完整讨论一下 C++ 里的时间和日期。
C++11 之前的时间和日期
在 C++11 之前,程序员当然也有处理时间和日期的需要,但那时,如果不用第三方库的话,我们只能使用 C 带来的陈旧功能。下面的代码演示了标准库提供的基本功能:
公开
同步至部落
取消
完成
0/2000
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结

1. C++11之前的时间和日期处理功能存在诸多问题,包括缺乏标准的时区支持、易用性问题、缺少高精度时间获取接口等。 2. C++11引入了chrono库,包括时钟、时间点和时长等基本概念,解决了之前时间和日期处理功能的不足。 3. C++11提供了三种不同的时钟类型:system_clock(系统时钟)、steady_clock(稳定时钟)和high_resolution_clock(高精度时钟)。 4. C++20进一步强化了chrono库,解决了C++11之前存在的问题,增加了日期方面的支持。 5. C++20提供了对日期的支持,可以方便地用年月日表达日期,也可以写出一些以前不可能的日期表达式。 6. C++20引入了sys_days类型,可以进行日期和时长的运算,提供更灵活的日期处理功能。 7. C++20的时间库改进包括基本易用性改进和日期支持。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《现代 C++ 编程实战》,新⼈⾸单¥59
《现代 C++ 编程实战》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论