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

履歴 編集

class
<chrono>

std::chrono::utc_clock(C++20)

namespace std::chrono {
  class utc_clock;
}

概要

utc_clockは、UTC時間 (協定世界時、Coordinated Universal Time) を表現するためのクロックである。

うるう秒を考慮しないシステム時間のクロックsystem_clockとその時間点sys_timeと違い、utc_clockとその時間点utc_timeは、エポック以降のうるう秒を含む時間をカウントする。

他のクロッククラスとは違い、このクラスのnow()静的メンバ関数は、標準ではnoexcept(false)である。実装がnoexcept(true)である保証をしない限り、このクラスはTrivialClock要件を満たさない。

エポック

クロックごとの初期時間 (内部的にカウンタがあれば値ゼロ) をエポックと呼ぶ。

utc_clockのエポックは、1970年1月1日0時0分0秒である。

メンバ関数

静的メンバ関数

名前 説明 対応バージョン
now 現在日時を取得する C++20
to_sys UTC時間からシステム時間へ変換する C++20
from_sys システム時間からUTC時間へ変換する C++20

メンバ型

名前 説明 対応バージョン
rep 時間間隔の内部表現となる符号付き算術型 C++20
period 時間の周期を表すratioratio<unspecified, unspecified> C++20
duration 時間間隔の型 duration<rep, period> C++20
time_point 時間の一点を指す型 time_point<utc_clock> C++20

メンバ定数

名前 説明 対応バージョン
static constexpr bool is_steady 逆行しないクロックかどうかを表すbool値。値は未規定。 C++20

#include <iostream>
#include <chrono>

namespace chrono = std::chrono;

int main()
{
  chrono::utc_clock::time_point tp = chrono::utc_clock::now();
  std::cout << tp << std::endl;
}

出力例

2019-10-24 11:15:10

バージョン

言語

  • C++20

処理系

  • Clang: (9.0時点で実装なし)
  • GCC: (9.2時点で実装なし)
  • Visual C++: (2019 Update 3時点で実装なし)

参照