Aracılığıyla paylaş


time_zone_link sınıfı

için alternatif bir time_zonead belirtir.

Sözdizimi

class time_zone_link;  // Since C++20

Açıklamalar

time_zone_link örnekleri, saat dilimi veritabanı başlatıldığında oluşturulur. Bunlar doğrudan oluşturulamaz. Bu konunun sonundaki örnekte gösterildiği gibi aracılığıyla get_tzdb().linksbir örnek alın.

Bu tür varsayılan taşıma oluşturucu ve taşıma atama işlecine sahip olsa da, bu türe yalnızca const erişim sağlandığından kopyalanamaz. Bu işlevlerin kullanılması tanımsız davranışa neden olur; bu nedenle taşıma oluşturucu ve atama işleci burada listelenmez.

IANA veritabanıyla farklılıklar

Microsoft'un uygulamasında saat dilimi verileri bazı durumlarda İnternet Tarafından Atanan Numaralar Yetkilisi (IANA) saat dilimi veritabanından farklı olabilir. Örneğin, "America/Nuuk" yerine döndürülür "America/Godthab" ("America/Nuuk" Nisan 2020'de yeniden adlandırıldı "America/Godthab" ). Saat dilimini "Eastern War Time EWT" şu anda sağlamıyoruz. Daha fazla bilgi için bkz . Microsoft STL GitHub deposunda sorun #1786 .

Üyeler

Genel üye işlevleri ve işlev şablonları

Veri Akışı Adı Açıklama
name Saat dilimi için alternatif adı alır.
target time_zone Bunun time_zone_link için alternatif bir ad olduğu adı.

Üye olmayanlar

Veri Akışı Adı Açıklama
operator== İki time_zone_link nesnenin aynı nameolup olmadığını belirleyin. Ad target , eşitlik denetiminin bir parçası değildir.
operator<=> Bunu time_zone_link başka bir time_zone_linkile karşılaştırın. İşleçler >, >=, <=, <, != derleyici tarafından sentezlenir. Left.name() <=> Right.name() döndürür.

Gereksinimler

Üstbilgi: <chrono>

Saat dilimi verileri yalnızca Windows 10 sürüm 1903/19H1 ve üzeri ile Windows Server 2022 ve sonraki sürümlerde kullanılabilir.

Ad alanı: std::chrono

Derleyici Seçeneği: /std:c++latest

Saat dilimi için alternatif adı alır.

string_view name() const noexcept;

Bunun time_zone_link alternatif adı time_zone olduğu adı alır.

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

Aşağıdaki örnek, IANA saat dilimi veritabanındaki her time_zone_link birinin adlarını görüntüler.

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

Ayrıca bkz.

<chrono>
time_zone
Üst bilgi dosyaları başvurusu