C++ 参考手册

位置:首页 > C++ 参考手册 >日期和时间工具 > std::chrono::utc_clock

定义于头文件 <chrono>
class utc_clock;
(C++20 起)

时钟 std::chrono::utc_clock 是表示协调世界时 (Coordinated Universal Time, UTC) 的时钟 (Clock) 。它度量从 1970 年 1 月 1 日星期四 00:00:00 开始的时间,包括闰秒。

utc_clock 满足时钟 (Clock) 要求。它不满足平凡时钟 (TrivialClock) 要求,除非实现能保证 now() 不抛异常。

时间点族

定义于命名空间 std::chrono
template<class Duration>
using utc_time = std::chrono::time_point<std::chrono::utc_clock, Duration>;
(C++20 起)
using utc_seconds = utc_time<std::chrono::seconds>;
(C++20 起)
进行 utc_time 上的流输出
(函数模板)
按照给定的格式从流分析 utc_time
(函数模板)
std::formatter 的特化,按照提供的格式格式化 utc_time
(类模板特化)

成员类型

 
成员类型 定义
rep 表示时钟时长中计次数的有符号算术类型
period 表示时钟计次周期的 std::ratio 类型,单位为秒
duration std::chrono::duration<rep, period> ,足以表示负时长
time_point std::chrono::time_point<std::chrono::utc_clock>

成员常量

constexpr bool is_steady
[静态]
若时间间隔计次始终为常数,即纵使在调整了外部时钟的情况下,调用 now() 的返回值亦单调递增,则为 true ;否则为 false
(公开静态成员常量)

成员函数

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

注解

官方的 UTC 纪元为 1972 年 1 月 1 日。 utc_clock 改用 1970 年 1 月 1 日以与 std::chrono::system_clock 一致。