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 name oggetto . Il target nome non fa parte del controllo di uguaglianza. |
operator<=> |
Confrontarlo time_zone_link con un altro time_zone_link oggetto . 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
name
Ottiene il nome alternativo per il fuso orario.
string_view name() const noexcept;
target
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
Esempio: show time_zone_link
name
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