Aracılığıyla paylaş


sys_info Yapı

Saat dilimi bilgileri için alt düzey bir arabirim sağlar.

Sözdizimi

struct sys_info;

Açıklamalar

saat dilimine dönüştürmenin sonucu sys_time hakkında düşük düzeyli bir local_timearabirim sağlar.

Üyeler

İşlev Açıklama
abbrev İlişkili time_zone ve time_pointiçin kullanılan kısaltma.
begin, end ve öğesinin offsetabbrev ilişkili saat dilimi için geçerli olduğu aralık.
offset İlişkili time_zone ve time_pointiçin Geçerli Evrensel Saat Eşgüdümlü (UTC) uzaklığı.
save Gün ışığından yararlanma saati ayarlama uzaklığı.

Üye olmayanlar

İşlev Açıklama
operator<< Akışa a sys_info çıkışı.

abbrev

İlişkili time_zone ve time_pointiçin kullanılan kısaltma.

string abbrev;

Dönüş değeri

Kısaltma.

Açıklamalar

Kısaltmalar arasında benzersiz time_zonedeğildir. Başka bir deyişle kısaltmaları bir ve UTC uzaklığıyla güvenilir bir time_zone şekilde eşleyemezsiniz.

begin, end

ve için geçerli olan offsetabbrev ilişkili saat dilimi [begin, end)üzerinde aralığı sağlar.

sys_seconds begin;
sys_seconds end;

Dönüş değeri

Döndürülen sys_seconds , ilişkili time_pointgöreli uzaklıklardır.

offset

İlişkili saat dilimi ve time_pointiçin UTC uzaklığı etkindir.

seconds offset;

Dönüş değeri

ile sys_time arasındaki local_time ilişki: offset = local_time - sys_time.

save

gün ışığından sys_info yararlanma saatinde olup olmadığını gösterir ve öyleyse, bu saat diliminin yaz saatiyle yararlanmadıysa kullanabileceği uzaklığı önerir.

minutes save;

Dönüş değeri

ise save != 0min, saat dilimi ilişkilendirilmiş time_pointolan gün ışığından yararlanma saatindedir. Bu durumda, offset-save gün ışığından yararlanma saatinde kullanılmıyorsa bunun time_zone hangi uzaklığı kullanabileceğini önerir.

Bu uzaklık yetkili değildir. Yetkili bir uzaklık elde etmek için, gün ışığından yararlanma saati sırasında düşmeyen bir time_point kullanan saat dilimine karşı sorguyla karşılaştırın. Yani, sıfır değeriyle sonuçlayan bir save ile karşılaştırıntime_point.

Örnek: 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

Gereksinimler

Üstbilgi:<chrono>

Ad alanı:std::chrono

Derleyici Seçeneği:/std:c++latest

<chrono>
file_clock class
high_resolution_clock
local_t Yapı
system_clock Yapı
tai_clock sınıfı
utc_clock sınıfı
Üst Bilgi Dosyaları Başvurusu