共用方式為


sys_info 結構

提供時區資訊的低階介面。

語法

struct sys_info;

備註

提供將 轉換成 sys_time local_time之結果的時區資訊低階介面。

成員

函式 描述
abbrev 相關聯和 time_point所使用的time_zone縮寫。
begin, end abbrev 套用至相關聯時區的範圍offset
offset 相關 time_zonetime_point生效的通用時間國際標準時間 (UTC) 位移。
save 日光節約時間調整位移。

非成員

函式 描述
operator<< sys_info將輸出至數據流。

abbrev

相關聯和 time_point所使用的time_zone縮寫。

string abbrev;

傳回值

縮寫。

備註

縮寫在 中並不是唯一的 time_zone。 這表示您無法可靠地將縮寫對應回 time_zone 和UTC位移。

begin, end

提供與所套用之相關聯時區 [begin, end)offset abbrev的範圍。

sys_seconds begin;
sys_seconds end;

傳回值

傳回 sys_seconds 的 是相對於相關聯 time_point的位移。

offset

相關聯時區和 time_point生效的UTC位移。

seconds offset;

傳回值

sys_time 之間的local_time關聯性為:offset = local_time - sys_time

save

指出 是否 sys_info 在日光節約時間,如果是,則表示如果不是日光節約時間,則這個時區可能會使用位移。

minutes save;

傳回值

如果 save != 0min為 ,則時區位於相關聯的 time_point日光節約時間。 在此情況下, offset-save 建議如果它不在日光節約時間時,可能會 time_zone 使用什麼位移。

此位移不具權威性。 若要取得權威位移,請使用在日光節約時間期間不會下降的 ,與時區 time_point 比較查詢。 也就是說,與會產生save零值的 比較time_point

範例:取得 sys_info

// compile using: /std:c++latest
#include <iostream>
#include <chrono>

using namespace std::chrono;

int main()
{
    sys_time<system_clock::duration> st = system_clock::now();
    
    const auto& timeZoneDatabase = get_tzdb();
    const auto& currentZone = timeZoneDatabase.current_zone();
    auto sysInfo = currentZone->get_info(st);

    std::cout << sysInfo << "\n";

    return 0;
}
begin: 2021-03-14 10:00:00, end: 2021-11-07 09:00:00, offset: -25200s, save: 60min, abbrev: PDT

需求

標頭: <chrono>

命名空間std::chrono

編譯程序選項: /std:c++latest

<chrono>
file_clock class
high_resolution_clock
local_t 結構
system_clock 結構
tai_clock 類別
utc_clock 類別
標頭檔參考