Spec-Zone.ru › C++

std::chrono::locate_zone

Определён в заголовочном файле <chrono>
const std::chrono::time_zone* locate_zone( std::string_view tz_name );
(начиная с C++20)

Вспомогательная функция для поиска часового пояса в базе данных часовых поясов. Эквивалентна std::chrono::get_tzdb().locate_zone(tz_name).

Параметры

tz_name - имя часового пояса, который требуется найти

Исключения

std::runtime_error, если указанный часовой пояс не найден или если это первое обращение к базе данных часовых поясов и её не удалось инициализировать.

Примечания

Вызов этой функции при первом обращении к базе данных часовых поясов приводит к её инициализации.

Пример

#include <chrono>
#include <iostream>

int main()
{
    try
    {
        for (const auto zone : {"Atlantic/Bermuda", "Alcatraz"})
            std::cout << std::chrono::locate_zone(zone)->name() << '\n';
    }
    catch(const std::runtime_error& ex)
    {
        std::cout << ex.what() << '\n';
    }
}

Возможный вывод:

Atlantic/Bermuda
std::chrono::tzdb: cannot locate zone: Alcatraz

См. также

locate_zone
находит часовой пояс с заданным именем
(открытая функция-член класса std::chrono::tzdb)
get_tzdbget_tzdb_listreload_tzdbremote_version
(C++20)
предоставляет доступ к глобальной информации о базе данных часовых поясов и управляет ею
(функции)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/chrono/locate_zone

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API