Struct sys_info

Fornisce un'interfaccia di basso livello per le informazioni sul fuso orario.

Sintassi

struct sys_info;

Osservazioni:

Fornisce un'interfaccia di basso livello alle informazioni sul fuso orario sul risultato della conversione di un sys_time oggetto in un oggetto local_time.

Membri

Funzione Descrizione
abbrev Abbreviazione utilizzata per l'oggetto associato time_zone e time_point.
begin, end Intervallo a cui offset e abbrev si applica per il fuso orario associato.
offset Offset UTC (Universal Time Coordinated) applicato per l'oggetto associato time_zone e time_point.
save Offset di regolazione dell'ora legale.

Membri non membri

Funzione Descrizione
operator<< Restituire un oggetto sys_info a un flusso.

abbrev

Abbreviazione utilizzata per l'oggetto associato time_zone e time_point.

string abbrev;

Valore restituito

Abbreviazione.

Osservazioni:

Le abbreviazioni non sono univoche tra le time_zone. Ciò significa che non è possibile mappare in modo affidabile le abbreviazioni a un time_zone offset UTC e .

begin, end

Fornisce l'intervallo rispetto al fuso orario associato, [begin, end), a cui offset e abbrev si applica.

sys_seconds begin;
sys_seconds end;

Valore restituito

Gli offset restituiti sys_seconds sono relativi all'oggetto associato time_point.

offset

Offset UTC in vigore per il fuso orario associato e time_point.

seconds offset;

Valore restituito

La relazione tra local_time e sys_time è : offset = local_time - sys_time.

save

Indica se l'oggetto è sull'ora sys_info legale e, in tal caso, suggerisce l'offset che questo fuso orario può usare se non si trattasse dell'ora legale.

minutes save;

Valore restituito

Se save != 0min, il fuso orario è in corrispondenza dell'ora legale all'oggetto associato time_point. In tal caso, offset-save suggerisce quale offset può time_zone usare se non all'ora legale.

Questo offset non è autorevole. Per ottenere un offset autorevole, confrontare con una query con il fuso orario usando un time_point oggetto che non cade durante l'ora legale. Ovvero, confrontare con un oggetto time_point che restituisce un save valore pari a zero.

Esempio: ottenere un 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

Requisiti

Intestazione: <chrono>

Spazio dei nomi: std::chrono

Opzione del compilatore: /std:c++latest

<chrono>
file_clock class
high_resolution_clock
local_t Struct
system_clock Struct
Classe tai_clock
Classe utc_clock
Riferimento file di intestazione