命名空间
变体
操作

std::chrono::tai_clock

来自 cppreference.com
< cpp‎ | chrono
 
 
实用程序库
语言支持
类型支持 (基本类型,RTTI)
库功能测试宏 (C++20)
动态内存管理
程序实用程序
协程支持 (C++20)
可变参数函数
调试支持
(C++26)
三向比较
(C++20)
(C++20)(C++20)(C++20)
(C++20)(C++20)(C++20)
通用实用程序
日期和时间
函数对象
格式化库 (C++20)
(C++11)
关系运算符 (C++20 中已弃用)
整数比较函数
(C++20)(C++20)(C++20)   
(C++20)
交换类型操作
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
通用词汇类型
(C++11)
(C++17)
(C++17)
(C++17)
(C++11)
(C++17)
(C++23)
基本字符串转换
(C++17)
(C++17)

 
 
 
定义在头文件 <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,相当于 1957-12-31 23:59:50 UTC)。

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 执行流输出
(函数模板) [edit]
根据提供的格式从流中解析 tai_time
(函数模板) [edit]
tai_time 的格式化支持
(类模板特化) [edit]

[edit] 成员类型

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

[edit] 成员常量

constexpr bool is_steady
[静态]
true 如果滴答之间的时间始终保持不变,即对 now() 的调用即使在某些外部时钟调整的情况下也返回单调递增的值,否则为 false
(公共静态成员常量)

[edit] 成员函数

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