17、时间接口处理全解析

时间接口处理全解析

1. C++ 中的时钟类

在 C++ 的 chrono 命名空间里,存在三种时钟类,它们在处理时间时各有特点:
- system_clock :代表所谓的挂钟时间,可随时调整,例如因闰秒引入额外不精确性或用户手动设置时。多数实现中,其纪元(起始点)采用 UNIX 时间,即从 1970 年 1 月 1 日开始计数。
- steady_clock :代表单调时钟,不会被调整,始终保持稳定。多数实现里,其起始点是机器启动的时间,适合用于计算特定事件的经过时间。
- high_resolution_clock :具有最短计时周期的时钟,可能是 system_clock steady_clock 的别名,也可能是完全不同的实现,具体由实现定义。

以下是这三种时钟类的对比表格:
| 时钟类 | 特点 | 起始点 | 适用场景 |
| ---- | ---- | ---- | ---- |
| system_clock | 可调整 | 1970 年 1 月 1 日 | 获取当前实际时间 |
| steady_clock | 不可调整,稳定 | 机器启动时间 | 计算事件经过时间 |
| high_resolution_clock | 最短计时周期 | 实现定义 | 对时间精度要求极高的场景 |

2. 使用 C++20 日历和时区功能

C++20 标准为

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值