- chrono[meta header]
- std::chrono[meta namespace]
- function[meta id-type]
- cpp20[meta cpp]
namespace std::chrono {
const tzdb_list& get_tzdb_list();
}
- tzdb_list[link tzdb_list.md]
タイムゾーンデータベースのリストを取得する。
この関数は、tzdb_list
クラスのシングルトンオブジェクトを生成・取得する。
この関数に最初にアクセスした際に、タイムゾーンデータベースを初期化する。初期化時には、tzdb_list
クラスオブジェクトには要素としてtzdb
オブジェクトがひとつだけ保持される。
タイムゾーンデータベースリストへの参照を返す。
なんらかの理由によりtzdb_list
が妥当なtzdb
オブジェクトをひとつも保持できない場合、runtime_error
例外が送出される。
- この関数は複数スレッドからの呼び出しに対して安全であり、初期化は一度だけ行われる
#include <iostream>
#include <chrono>
namespace chrono = std::chrono;
int main()
{
const chrono::tzdb& tzdb = chrono::get_tzdb_list().front();
const chrono::time_zone* tz = tzdb.locate_zone("Asia/Tokyo");
std::cout << tz->name() << std::endl;
}
- chrono::get_tzdb_list()[color ff0000]
- front()[link tzdb_list/front.md]
- chrono::tzdb[link tzdb.md]
- tzdb.locate_zone[link tzdb/locate_zone.md]
- chrono::time_zone[link time_zone.md]
- tz->name()[link time_zone/name.md]
Asia/Tokyo
- C++20
- Clang: 9.0 [mark noimpl]
- GCC: 9.2 [mark noimpl]
- Visual C++: 2019 Update 3 [mark noimpl]