Freigeben über


time_zone_link-Klasse

Gibt einen alternativen Namen für ein time_zone.

Syntax

class time_zone_link;  // Since C++20

Hinweise

time_zone_link Instanzen werden erstellt, wenn die Zeitzonendatenbank initialisiert wird. Sie können nicht direkt erstellt werden. Rufen Sie eine Instanz über get_tzdb().links, wie im Beispiel am Ende dieses Themas gezeigt.

Obwohl dieser Typ über einen Standardmäßigen Verschiebungskonstruktor und einen Zuweisungsoperator verfügt, kann er nicht kopiert werden, da nur const Zugriff auf diesen Typ bereitgestellt wird. Die Verwendung dieser Funktionen führt zu einem nicht definierten Verhalten, weshalb der Verschiebungskonstruktor und der Zuordnungsoperator hier nicht aufgeführt sind.

Unterschiede bei der IANA-Datenbank

In der Implementierung von Microsoft können sich Zeitzonendaten in einigen Fällen von der Zeitzonendatenbank (Internet Assigned Numbers Authority, IANA) unterscheiden. Wird beispielsweise "America/Nuuk" anstelle von "America/Godthab" ("America/Nuuk" wurde im April 2020 umbenannt "America/Godthab" ) zurückgegeben. Zurzeit geben wir die "Eastern War Time EWT" Zeitzone nicht an. Weitere Informationen finden Sie unter Problem Nr. 1786 im Microsoft STL GitHub-Repository.

Member

Öffentliche Memberfunktionen und Funktionsvorlagen

Name Beschreibung
name Ruft den alternativen Namen für die Zeitzone ab.
target Der Name des Namens, für den time_zone dies time_zone_link ein alternativer Name ist.

Nicht-Member

Name Beschreibung
operator== Bestimmen Sie, ob zwei time_zone_link Objekte gleich namesind. Der target Name ist nicht Teil der Gleichheitsprüfung.
operator<=> Vergleichen Sie dies time_zone_link mit einem anderen time_zone_link. Die >, >=, <=, <, != Operatoren werden vom Compiler synthetisiert. Gibt Left.name() <=> Right.name() zurück.

Anforderungen

Header: <chrono>

Zeitzonendaten sind nur für Windows 10, Version 1903/19H1 und höher, und Windows Server 2022 und höher verfügbar.

Namespace:std::chrono

Compileroption: /std:c++latest

Ruft den alternativen Namen für die Zeitzone ab.

string_view name() const noexcept;

Ruft den Namen des Namens ab, für den time_zone time_zone_link es sich um einen alternativen Namen handelt.

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

Im folgenden Beispiel werden die Namen der einzelnen time_zone_link Elemente in der IANA-Zeitzonendatenbank angezeigt.

// 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

Siehe auch

<chrono>
time_zone
Referenz zu Headerdateien