Partager via


Classe time_zone_link

Spécifie un autre nom pour un time_zone.

Syntaxe

class time_zone_link;  // Since C++20

Notes

time_zone_link les instances sont créées lorsque la base de données de fuseau horaire est initialisée. Ils ne peuvent pas être créés directement. Obtenez une instance via get_tzdb().links, comme indiqué dans l’exemple à la fin de cette rubrique.

Bien que ce type possède un constructeur de déplacement par défaut et un opérateur d’affectation de déplacement, il n’est pas copieux, car seul const l’accès est fourni à ce type. L’utilisation de ces fonctions entraîne un comportement non défini, c’est pourquoi le constructeur de déplacement et l’opérateur d’affectation ne sont pas répertoriés ici.

Différences avec la base de données IANA

Dans l’implémentation de Microsoft, les données de fuseau horaire peuvent différer dans certains cas de la base de données de fuseau horaire IANA (Internet Assigned Numbers Authority). Par exemple, "America/Nuuk" est retourné au lieu de "America/Godthab" ("America/Nuuk" a été renommé "America/Godthab" en avril 2020). Nous ne fournissons pas le fuseau horaire pour l’instant "Eastern War Time EWT" . Pour plus d’informations, consultez Le problème n° 1786 sur le dépôt GitHub Microsoft STL.

Membres

Fonctions et modèles de fonction membres publics

Nom Description
name Obtient le nom de remplacement du fuseau horaire.
target Nom du nom pour time_zone lequel il s’agit time_zone_link d’un autre nom.

Non-membres

Nom Description
operator== Déterminez si deux time_zone_link objets ont le même name. Le target nom ne fait pas partie de l’égalité case activée.
operator<=> Comparez-le time_zone_link à un autre time_zone_link. Les >, >=, <=, <, != opérateurs sont synthétisés par le compilateur. Retourne Left.name() <=> Right.name().

Spécifications

En-tête<chrono>:

Les données de fuseau horaire sont disponibles uniquement pour Windows 10 version 1903/19H1 et ultérieures, et Windows Server 2022 et versions ultérieures.

Espace de noms :std::chrono

Option du compilateur :/std:c++latest

Obtient le nom de remplacement du fuseau horaire.

string_view name() const noexcept;

Obtient le nom du time_zone nom pour lequel il s’agit time_zone_link d’un autre nom.

string_view target() const noexcept;  // Since C++20

L’exemple suivant affiche les noms de chacun time_zone_link dans la base de données de fuseau horaire IANA.

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

using namespace std::chrono;

int main()
{
    const auto& my_tzdb = get_tzdb(); // get the IANA time zone database
    auto& links = my_tzdb.links; // get the list of time_zone_links from the database
    std::for_each(links.begin(), links.end(), // display each time_zone_link name and target
        [](auto& l)
        {
            std::cout << "Name: " << l.name() << "Target" << l.target() << '\n';
        });

    return 0;
}
Name: ACT Target:Australia/Darwin
Name: AET Target:Australia/Sydney
Name: AGT Target:America/Buenos_Aires
Name: ART Target:Africa/Cairo
Name: AST Target:America/Anchorage
Name: Africa/Asmara Target:Africa/Asmera
Name: Africa/Timbuktu Target:Africa/Bamako
Name: America/Argentina/Buenos_Aires Target:America/Buenos_Aires
Name: America/Argentina/Catamarca Target:America/Catamarca
...
Name: Zulu Target:Etc/UTC

Voir aussi

<chrono>
time_zone
Informations de référence sur les fichiers d’en-tête