名前空間
変種
操作

std::chrono::gps_clock

提供: cppreference.com
< cpp‎ | chrono
 
 
 
日付と時間のユーティリティ
(C++11)
(C++11)
時計
(C++20)
                                                  
(C++20)
(C++20)
gps_clock
(C++20)
(C++20)
(C++20)
カレンダー
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
タイムゾーン
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
C スタイルの日付と時間
 
 
ヘッダ <chrono> で定義
class gps_clock;
(C++20以上)

時計 std::chrono::gps_clock は全地球測位システム (GPS) 時刻を表す Clock です。 協定世界時1980年1月6日0時0分0秒からの経過時間を計測します。

閏秒は GPS には挿入されません。 そのため、 UTC に閏秒が挿入されるたびに、 UTC は GPS から1秒ずつ遅れていきます。 2017年12月の時点では、 UTC は GPS から18秒遅れています。 1980年から2017年までの間に18回の閏秒挿入が行われたことが反映されています。 そのため、 2018-01-01 00:00:00 UTC は 2018-01-01 00:00:18 GPS と同等です。 GPS は TAI から常に19秒遅れています。

gps_clockClock の要件を満たします。 now() が例外を投げないことを実装が保証できなければ、 TrivialClock の要件は満たしません。

目次

[編集] time_point ファミリー

名前空間 std::chrono で定義
template<class Duration>
using gps_time = std::chrono::time_point<std::chrono::gps_clock, Duration>;
(C++20以上)
using gps_seconds = gps_time<std::chrono::seconds>;
(C++20以上)
gps_time のストリーム出力を行います
(関数テンプレート) [edit]
指定された書式に従って gps_time をストリームからパースします
(関数テンプレート) [edit]
提供された書式に従って gps_time を書式化する std::formatter の特殊化
(クラステンプレートの特殊化) [edit]

[編集] メンバ型

メンバ型 定義
rep 時計の時間の刻みの数を表す符号付き算術型
period 時計の刻みの間隔を秒で表す std::ratio
duration std::chrono::duration<rep, period>、負の時間を表すこともできます
time_point std::chrono::time_point<std::chrono::gps_clock>

[編集] メンバ定数

constexpr bool is_steady
[静的]
刻みの間隔が常に一定、つまり外部の何らかの時計が調整された場合でも now() の呼び出しが常に単調に増加する値を返す場合は true、そうでなければ false
(パブリック静的メンバ定数)

[編集] メンバ関数

[静的]
時の現在点を表す std::chrono::time_point を返します
(パブリック静的メンバ関数) [edit]
[静的]
gps_timeutc_time に変換します
(パブリック静的メンバ関数) [edit]
[静的]
utc_timegps_time に変換します
(パブリック静的メンバ関数) [edit]