名稱空間
變體
操作

std::chrono::system_clock

來自 cppreference.com
< cpp‎ | chrono
 
 
日期和時間庫
時間點
(C++11)
(C++20)
時長
(C++11)
時鐘
system_clock
(C++11)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
日間時間
(C++20)(C++20)
(C++20)(C++20)
(C++20)
日曆
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)(C++20)
chrono I/O
(C++20)

 
 
定義於標頭檔案 <chrono>
class system_clock;
(C++11 起)

std::chrono::system_clock表示系統範圍內的即時掛鐘。

它可能不是單調的:在大多數系統上,系統時間可以隨時調整。它是唯一能夠將其時間點對映到 C 風格時間的 C++ 時鐘。

std::chrono::system_clock滿足TrivialClock的要求。

system_clock的紀元未指定,但大多數實現使用 Unix 時間(即自協調世界時 (UTC) 1970 年 1 月 1 日星期四 00:00:00 以來的時間,不計閏秒)。

(C++20 前)

system_clock測量 Unix 時間(即自協調世界時 (UTC) 1970 年 1 月 1 日星期四 00:00:00 以來的時間,不計閏秒)。

(C++20 起)

目錄

時間點家族

定義在名稱空間 std::chrono
template<class Duration>
using sys_time = std::chrono::time_point<std::chrono::system_clock, Duration>;
(C++20 起)
using sys_seconds = sys_time<std::chrono::seconds>;
(C++20 起)
using sys_days = sys_time<std::chrono::days>;
(C++20 起)
sys_time 執行流輸出
(函式模板) [編輯]
根據提供的格式從流中解析 sys_time
(函式模板) [編輯]
sys_time 的格式化支援
(類模板特化) [編輯]

[編輯] 成員型別

成員型別 定義
rep 帶符號算術型別,表示時鐘持續時間內的“滴答”數
period 一個 std::ratio 型別,表示時鐘的“滴答”週期,以秒為單位
duration std::chrono::duration<rep, period>,能夠表示負持續時間
time_point std::chrono::time_point<std::chrono::system_clock>

[編輯] 成員常量

constexpr bool is_steady
[靜態]
如果兩次嘀嗒之間的時間始終恆定,即對now()的呼叫返回單調遞增的值,即使在某些外部時鐘調整的情況下也是如此,則為true,否則為false
(public static 成員常量)

[編輯] 成員函式

[靜態]
返回表示當前時間點的 std::chrono::time_point
(public static 成員函式) [編輯]
[靜態]
將系統時鐘時間點轉換為std::time_t
(public static 成員函式) [編輯]
[靜態]
std::time_t轉換為系統時鐘時間點
(public static 成員函式) [編輯]

[編輯] 注意

system_clock的時間值可由作業系統隨時在內部調整,例如由於 NTP 同步或使用者更改系統時鐘。然而,夏令時和時區更改不會影響它,因為它基於UTC時區。

[編輯] 另請參閱

永不調整的單調時鐘
(類) [編輯]
可用最短滴答週期的時鐘
(類) [編輯]