std::chrono::system_clock
来自 cppreference.cn
定义于头文件 <chrono> |
||
class system_clock; |
(since C++11) | |
类 std::chrono::system_clock
表示系统范围的实时挂钟。
它可能不是单调的:在大多数系统中,系统时间可以在任何时刻进行调整。它是唯一能够将其时间点映射到 C 风格时间的 C++ 时钟。
std::chrono::system_clock
满足 TrivialClock 的要求。
|
(until C++20) |
|
(since C++20) |
内容 |
时间点族
定义于命名空间 std::chrono |
||
template<class Duration> using sys_time = std::chrono::time_point<std::chrono::system_clock, Duration>; |
(since C++20) | |
using sys_seconds = sys_time<std::chrono::seconds>; |
(since C++20) | |
using sys_days = sys_time<std::chrono::days>; |
(since C++20) | |
对 sys_time 执行流输出(函数模板) | |
根据提供的格式从流中解析 sys_time (函数模板) | |
sys_time 的格式化支持(类模板特化) |
[edit] 成员类型
成员类型 | 定义 |
rep
|
有符号算术类型,表示时钟持续时间中的滴答数 |
period
|
一个 std::ratio 类型,表示时钟的滴答周期,以秒为单位 |
duration
|
std::chrono::duration<rep, period>,能够表示负持续时间 |
time_point
|
std::chrono::time_point<std::chrono::system_clock> |
[edit] 成员常量
constexpr bool is_steady [静态] |
true 如果滴答之间的时间始终是恒定的,即,即使在某些外部时钟调整的情况下,调用 now() 返回的值也单调递增,否则为 false (公共静态成员常量) |
[edit] 成员函数
[静态] |
返回一个 std::chrono::time_point,表示当前时间点 (公共静态成员函数) |
[静态] |
将系统时钟时间点转换为 std::time_t (公共静态成员函数) |
[静态] |
将 std::time_t 转换为系统时钟时间点 (公共静态成员函数) |
[edit] 注释
system_clock
的时间值可以随时由操作系统在内部调整,例如由于 NTP 同步或用户更改系统时钟。但是,夏令时和时区更改不会影响它,因为它基于 UTC 时区。
[edit] 参见
(C++11) |
永不调整的单调时钟 (类) |
(C++11) |
具有最短可用滴答周期的时钟 (类) |