Partager via


struct sys_info

Fournit une interface de bas niveau pour les informations de fuseau horaire.

Syntaxe

struct sys_info;

Notes

Fournit une interface de bas niveau en informations de fuseau horaire sur le résultat de la conversion d’un sys_time en un local_time.

Membres

Fonction Description
abbrev Abréviation utilisée pour l’associé time_zone et time_point.
begin, end Plage à laquelle s’applique offsetabbrev le fuseau horaire associé.
offset Décalage UTC (Universal Time Coordinated) en vigueur pour l’élément associé time_zone et time_point.
save Décalage d’ajustement de l’heure d’été.

Non-membres

Fonction Description
operator<< Sortie d’un sys_info flux.

abbrev

Abréviation utilisée pour l’associé time_zone et time_point.

string abbrev;

Valeur retournée

Abréviation.

Notes

Les abréviations ne sont pas uniques parmi les time_zones. Cela signifie que vous ne pouvez pas mapper de manière fiable les abréviations à un time_zone décalage UTC.

begin, end

Fournit l’intervalle sur le fuseau horaire associé, [begin, end)auquel et offsetabbrev s’applique.

sys_seconds begin;
sys_seconds end;

Valeur retournée

Les décalages retournés sys_seconds sont relatifs à l’associé time_point.

offset

Décalage UTC en vigueur pour le fuseau horaire associé et time_point.

seconds offset;

Valeur retournée

La relation entre local_time et sys_time est : offset = local_time - sys_time.

save

Indique si l’heure sys_info d’été et, le cas échéant, suggère que le décalage de ce fuseau horaire peut être utilisé s’il ne s’agissait pas de l’heure d’été.

minutes save;

Valeur retournée

Si save != 0min, le fuseau horaire est en heure d’été à l’heure associée time_point. Dans ce cas, offset-save suggère ce décalage time_zone peut être utilisé s’il n’est pas à l’heure d’été.

Ce décalage n’est pas faisant autorité. Pour obtenir un décalage faisant autorité, comparez une requête à un fuseau horaire à l’aide d’un time_point décalage qui ne tombe pas pendant l’heure d’été. Autrement dit, comparez une time_pointsave valeur égale à zéro.

Exemple : obtenir 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

Spécifications

En-tête<chrono> :

Espace de noms :std::chrono

Option du compilateur :/std:c++latest

<chrono>
file_clock class
high_resolution_clock
Struct local_t
Struct system_clock
tai_clock, classe
utc_clock, classe
Informations de référence sur les fichiers d’en-tête