std::chrono::gps_clock
来自 cppreference.cn
定义于头文件 <chrono> |
||
class gps_clock; |
(C++20 起) | |
时钟 std::chrono::gps_clock
是一个 Clock,表示全球定位系统 (GPS) 时间。它从协调世界时 (UTC) 1980 年 1 月 6 日 00:00:00 开始测量时间。
GPS 不插入闰秒。因此,每当 UTC 插入闰秒时,UTC 就会比 GPS 再滞后一秒。截至 2017 年 12 月,UTC 比 GPS 滞后 18 秒,反映了 1980 年至 2017 年间插入的 18 个闰秒。因此,UTC 2018-01-01 00:00:00 等同于 GPS 2018-01-01 00:00:18。GPS 始终比 TAI 滞后 19 秒。
gps_clock
满足 Clock 要求。除非实现能保证 now() 不抛出异常,否则它不满足 TrivialClock 要求。
目录 |
时间点家族
定义在命名空间 std::chrono 中 |
||
template<class Duration> using gps_time = std::chrono::time_point<std::chrono::gps_clock, Duration>; |
(C++20 起) | |
using gps_seconds = gps_time<std::chrono::seconds>; |
(C++20 起) | |
对 gps_time 执行流输出(函数模板) | |
根据提供的格式从流中解析 gps_time (函数模板) | |
gps_time 的格式化支持(类模板特化) |
[编辑] 成员类型
成员类型 | 定义 |
rep
|
带符号算术类型,表示时钟持续时间内的“滴答”数 |
period
|
一个 std::ratio 类型,表示时钟的“滴答”周期,以秒为单位 |
duration
|
std::chrono::duration<rep, period>,能够表示负持续时间 |
time_point
|
std::chrono::time_point<std::chrono::gps_clock> |
[编辑] 成员常量
constexpr bool is_steady [静态] |
true 如果滴答之间的时间总是恒定的,即对 now() 的调用返回即使在某些外部时钟调整的情况下也单调增加的值,否则为 false (public static 成员常量) |
[编辑] 成员函数
[静态] |
返回表示当前时间点的 std::chrono::time_point (public static member function) |
[静态] |
将 gps_time 转换为 utc_time (public static member function) |
[静态] |
将 utc_time 转换为 gps_time (public static member function) |