Condividi tramite


Classe time_zone_link

Specifica un nome alternativo per un oggetto time_zone.

Sintassi

class time_zone_link;  // Since C++20

Osservazioni:

time_zone_link Le istanze vengono create quando viene inizializzato il database del fuso orario. Non possono essere creati direttamente. Ottenere un'istanza tramite get_tzdb().links, come illustrato nell'esempio alla fine di questo argomento.

Anche se questo tipo ha un costruttore di spostamento predefinito e un operatore di assegnazione di spostamento, non è copiabile perché viene fornito solo const l'accesso a questo tipo. L'uso di queste funzioni comporta un comportamento non definito, motivo per cui il costruttore di spostamento e l'operatore di assegnazione non sono elencati qui.

Differenze con il database IANA

Nell'implementazione di Microsoft, i dati del fuso orario possono differire in alcuni casi dal database del fuso orario IANA (Internet Assigned Numbers Authority). Ad esempio, "America/Nuuk" viene restituito anziché "America/Godthab" ("America/Nuuk" è stato rinominato "America/Godthab" nell'aprile 2020). Non forniamo il "Eastern War Time EWT" fuso orario in questo momento. Per altre informazioni, vedere Problema 1786 nel repository GitHub STL di Microsoft.

Membri

Funzioni membro pubbliche e modelli di funzione

Nome Descrizione
name Ottiene il nome alternativo per il fuso orario.
target Nome dell'oggetto time_zone per cui si tratta time_zone_link di un nome alternativo.

Membri non membri

Nome Descrizione
operator== Determinare se due time_zone_link oggetti hanno lo stesso nameoggetto . Il target nome non fa parte del controllo di uguaglianza.
operator<=> Confrontarlo time_zone_link con un altro time_zone_linkoggetto . Gli >, >=, <=, <, != operatori vengono sintetizzati dal compilatore. Restituisce Left.name() <=> Right.name().

Requisiti

Intestazione: <chrono>

I dati del fuso orario sono disponibili solo per Windows 10 versione 1903/19H1 e successive e Windows Server 2022 e versioni successive.

Spazio dei nomi: std::chrono

Opzione del compilatore: /std:c++latest

Ottiene il nome alternativo per il fuso orario.

string_view name() const noexcept;

Ottiene il nome dell'oggetto time_zone per cui si tratta time_zone_link di un nome alternativo.

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

Nell'esempio seguente vengono visualizzati i nomi di ognuno time_zone_link nel database del fuso orario 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

Vedi anche

<chrono>
time_zone
Informazioni di riferimento per i file di intestazione