命名空间
变体
操作

std::chrono::locate_zone

来自 cppreference.cn
< cpp‎ | chrono
 
 
 
定义于头文件 <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

[编辑] 参阅

查找具有给定名称的时区
(std::chrono::tzdb 的公共成员函数) [编辑]
访问和控制全局时区数据库信息
(函数) [编辑]