Namespaces
Variants

std::chrono:: tai_clock

From cppreference.net
定义于头文件 <chrono>
class tai_clock ;
(C++20 起)

时钟 std::chrono::tai_clock 是一个 Clock ,用于表示 国际原子时 (TAI)。它计量自1958年1月1日00:00:00起的时间,并在该日期比UTC提前10秒(即其纪元1958-01-01 00:00:00 TAI对应UTC时间1957-12-31 23:59:50)。

闰秒不会插入到国际原子时(TAI)中。因此,每当闰秒被插入到协调世界时(UTC)时,UTC 就会比 TAI 再落后一秒。截至 2017 年 12 月,UTC 比 TAI 落后 37 秒,这反映了 10 秒的初始偏移以及 1958 年至 2017 年间插入的 27 个闰秒。因此,2018-01-01 00:00:00 UTC 相当于 2018-01-01 00:00:37 TAI。

tai_clock 满足 Clock 要求。它不满足 TrivialClock 要求,除非实现能够保证 now() 不会抛出异常。

目录

时间点族

定义于命名空间 std::chrono
template < class Duration >
using tai_time = std:: chrono :: time_point < std :: chrono :: tai_clock , Duration > ;
(C++20 起)
using tai_seconds = tai_time < std:: chrono :: seconds > ;
(C++20 起)
tai_time 执行流输出操作
(函数模板)
根据指定格式从流中解析 tai_time
(函数模板)
tai_time 的格式化支持
(类模板特化)

成员类型

成员类型 定义
rep 表示时钟时长中滴答数的有符号算术类型
period 表示时钟滴答周期的 std::ratio 类型(以秒为单位)
duration std:: chrono :: duration < rep, period > ,能够表示负时长
time_point std:: chrono :: time_point < std :: chrono :: tai_clock >

成员常量

constexpr bool is_steady
[static]
若时间滴答间隔始终保持恒定(即即使发生外部时钟调整,对 now() 的调用仍返回单调递增的数值)则为 true ,否则为 false
(公开静态成员常量)

成员函数

[static]
返回表示当前时间点的 std::chrono::time_point
(公开静态成员函数)
[static]
tai_time 转换为 utc_time
(公开静态成员函数)
[static]
utc_time 转换为 tai_time
(公开静态成员函数)