最終更新日時(UTC):
が更新

履歴 編集

<chrono>

chrono(C++11)

<chrono>ヘッダは、時間に関するユーティリティとして機能する関数・クラスを提供する。このヘッダに含まれる関数・クラスは、std::chrono名前空間で定義される。

このライブラリは、タイムアウト、操作間隔、スケジューリングといった短期間の操作を主な用途として想定している。そのためカレンダー機能としては遥かな過去・未来を扱えるようにはなっていない。

このヘッダでは、以下の標準ヘッダをインクルードする:

時間を表す型

名前 説明 対応バージョン
duration 時間の間隔(class template) C++11
time_point 時間軸上の一点(class template) C++11
treat_as_floating_point duration内部表現の型が浮動小数点型かを判定するためのトレイト(class template) C++11
duration_values duration内部表現の特別な値を取得するためのトレイト(class template) C++11

時間の単位を表す型

名前 説明 対応バージョン
nanoseconds ナノ秒を表現するためのdurationの別名(type-alias) C++11
microseconds マイクロ秒を表現するためのdurationの別名(type-alias) C++11
milliseconds ミリ秒を表現するためのdurationの別名(type-alias) C++11
seconds 秒を表現するためのdurationの別名(type-alias) C++11
minutes 分を表現するためのdurationの別名(type-alias) C++11
hours 時を表現するためのdurationの別名(type-alias) C++11
days 日を表現するためのdurationの別名(type-alias) C++20
weeks 週を表現するためのdurationの別名(type-alias) C++20
years 年を表現するためのdurationの別名(type-alias) C++20
months 月を表現するためのdurationの別名(type-alias) C++20

時計型

名前 説明 対応バージョン
is_clock クロック型かを判定する (class template) C++20
system_clock システム時間のクロック(class) C++11
steady_clock 時間が逆行しないクロック(class) C++11
high_resolution_clock 高分解能クロック(class) C++11
utc_clock UTC時間 (協定世界時) のクロック (class) C++20
tai_clock TAI時間 (国際原子時) のクロック (class) C++20
gps_clock GPS時間のクロック (class) C++20
file_clock ファイル時間を作るために使用されるクロック (type-alias) C++20

システム時間用の機能

名前 説明 対応バージョン
sys_time システム時間の一点を指すtime_pointの別名 (type-alias) C++20
sys_seconds 秒単位でシステム時間の一点を指すtime_pointの別名 (type-alias) C++20
sys_days 日単位でシステム時間の一点を指すtime_pointの別名 (type-alias) C++20

ローカル時間用の機能

名前 説明 対応バージョン
local_t ローカル時間を表す擬似的なクロック (class) C++20
local_time ローカル時間の一点を指すtime_pointの別名 (type-alias) C++20
local_seconds 秒単位でローカル時間の一点を指すtime_pointの別名 (type-alias) C++20
local_days 日単位でローカル時間の一点を指すtime_pointの別名 (type-alias) C++20

UTC時間用の機能

名前 説明 対応バージョン
utc_time UTC時間の一点を指すtime_pointの別名 (type-alias) C++20
utc_seconds 秒単位でUTC時間の一点を指すtime_pointの別名 (type-alias) C++20

TAI時間用の機能

名前 説明 対応バージョン
tai_time TAI時間の一点を指すtime_pointの別名 (type-alias) C++20
tai_seconds 秒単位でTAI時間の一点を指すtime_pointの別名 (type-alias) C++20

GPS時間用の機能

名前 説明 対応バージョン
gps_time GPS時間の一点を指すtime_pointの別名 (type-alias) C++20
gps_seconds 秒単位でGPS時間の一点を指すtime_pointの別名 (type-alias) C++20

ファイル時間用の機能

名前 説明 対応バージョン
file_time ファイル時間の一点を指すtime_pointの別名 (type-alias) C++20

時計時間の変換

名前 説明 対応バージョン
clock_time_conversion 時計間の変換方法を組み合わせごとに定義するためのクラス (class template) C++20
clock_cast ほかの時計時間のtime_pointに変換する (function template) C++20

うるう秒の情報

名前 説明 対応バージョン
leap_second_info うるう秒の情報を扱うクラス (class) C++20
get_leap_second_info 指定した日時までに挿入されたうるう秒の回数を取得する (function template) C++20

カレンダー型

名前 説明 対応バージョン
last_spec 月の最終日、週の最終日など、文脈に応じた「最後」を表す型 (class) C++20
day 未規定の月の指定した日を表す型 (class) C++20
month 月単体の値を表す型 (class) C++20
year カレンダーの年を表す型 (class) C++20
weekday 週の日を表す型 (class) C++20
weekday_indexed N回目の指定した曜日を表す型 (class) C++20
weekday_last 未規定の月の最後の指定した曜日を表す型 (class) C++20
month_day 月と日を表す型 (class) C++20
month_day_last 指定した月の最終日を表す型 (class) C++20
month_weekday 月の指定したN番目の曜日を表す型 (class) C++20
month_weekday_last 月の指定した最終回目の曜日を表す型 (class) C++20
year_month 年と月を表す型 (class) C++20
year_month_day 年、月、日を表す型 (class) C++20
year_month_day_last 年、月、月の最終日を表す型 (class) C++20
year_month_weekday 年、月、N回目の指定した曜日を表す型 (class) C++20
year_month_weekday_last 年、月、月の最後の指定した曜日を表す型 (class) C++20

1日内の時間情報

名前 説明 対応バージョン
hh_mm_ss 時間間隔を時、分、秒に分割するクラス (class) C++20
is_am 時間が午前かを判定する (function) C++20
is_pm 時間が午後かを判定する (function) C++20
make12 24時間ベースの時間を12時間ベースの時間範囲に変換する (function) C++20
make24 12時間ベースの時間を24時間ベースの時間範囲に変換する (function) C++20

タイムゾーン

タイムゾーンのデータベース

名前 説明 対応バージョン
tzdb タイムゾーンのデータベース型 (class) C++20
get_tzdb タイムゾーンデータベースを取得する (function) C++20
tzdb_list タイムゾーンデータベースのリスト (class) C++20
get_tzdb_list タイムゾーンデータベースのリストを取得する (function) C++20
locate_zone 指定した名前のタイムゾーンを取得する (function) C++20
current_zone 現在のタイムゾーンを取得する (function) C++20

リモートタイムゾーンデータベースのサポート

名前 説明 対応バージョン
reload_tzdb リモートタイムゾーンデータベースを再読み込みする (function) C++20
remote_version リモートタイムゾーンデータベースの最新バージョン番号を取得する (function) C++20

例外クラス

名前 説明 対応バージョン
nonexistent_local_time 存在しないローカル時間をシステム時間に変換しようとした (class) C++20
ambiguous_local_time ローカル時間があいまい (class) C++20

タイムゾーン

名前 説明 対応バージョン
sys_info システム時間用のタイムゾーン情報 (class) C++20
local_info ローカル時間用のタイムゾーン情報 (class) C++20
choose タイムゾーンを変換する際に、早い時間側と遅い時間側どちらに丸めるかの種類 (enum) C++20
time_zone タイムゾーンの変換を扱うクラス (class) C++20
zoned_traits タイムゾーン取得のカスタマイズ用中間インタフェース (class) C++20
zoned_time タイムゾーンを考慮した時間軸上の一点を表す型 (class) C++20
zoned_seconds 秒単位でタイムゾーンを考慮した時間軸上の一点を表す型 (type-alias) C++20

うるう秒サポート

名前 説明 対応バージョン
leap_second うるう秒が挿入された日時を表す型 (class) C++20

リンク

名前 説明 対応バージョン
time_zone_link タイムゾーンの代替名を管理する型 (class) C++20

文字列フォーマット

名前 説明 対応バージョン
local-time-format-t ローカル時間を文字列フォーマットするために必要な情報をまとめた説明用の型 (class template) C++20
local_time_format ローカル時間の文字列フォーマット用オブジェクトを生成する (function template) C++20
format 文字列フォーマット C++20

文字列解析

名前 説明 対応バージョン
parse 日時文字列を解析する入力マニピュレータ (function template) C++20

カレンダー定数

最後

名前 説明 対応バージョン
last 月の最終日、週の最終日など、文脈に応じた「最後」を表す定数 (variable) C++20

曜日

名前 説明 対応バージョン
Sunday 日曜日を表す定数 (variable) C++20
Monday 月曜日を表す定数 (variable) C++20
Tuesday 火曜日を表す定数 (variable) C++20
Wednesday 水曜日を表す定数 (variable) C++20
Thursday 木曜日を表す定数 (variable) C++20
Friday 金曜日を表す定数 (variable) C++20
Saturday 土曜日を表す定数 (variable) C++20

名前 説明 対応バージョン
January 1月を表す定数 (variable) C++20
February 2月を表す定数 (variable) C++20
March 3月を表す定数 (variable) C++20
April 4月を表す定数 (variable) C++20
May 5月を表す定数 (variable) C++20
June 6月を表す定数 (variable) C++20
July 7月を表す定数 (variable) C++20
August 8月を表す定数 (variable) C++20
September 9月を表す定数 (variable) C++20
October 10月を表す定数 (variable) C++20
November 11月を表す定数 (variable) C++20
December 12月を表す定数 (variable) C++20

バージョン

言語

  • C++11

参照