名前空間
変種
操作

std::chrono::time_zone::to_sys

From cppreference.com
< cpp‎ | chrono‎ | time zone
 
 
 
 
template< class Duration >

auto to_sys( const std::chrono::local_time<Duration>& tp ) const

    -> std::chrono::sys_time<std::common_type_t<Duration, std::chrono::seconds>>;
(1) (C++20以降)
template< class Duration >

auto to_sys( const std::chrono::local_time<Duration>& tp, std::chrono::choose z ) const

    -> std::chrono::sys_time<std::common_type_t<Duration, std::chrono::seconds>>;
(2) (C++20以降)

このタイムゾーンにおける local_time tp を、対応する sys_time に変換します。

1) 変換が曖昧である場合、または tp が存在しない時刻を表す場合に例外をスローします。
2) z の値に応じて曖昧さを解決します。
  • z == std::chrono::choose::earliest の場合、より早い方の sys_time を返します。
  • z == std::chrono::choose::latest の場合、より遅い方の sys_time を返します。
tp が 2 つの UTC time_point の間の存在しない時刻を表す場合、その 2 つの time_point は同じになり、その time_point が返されます。

目次

[編集] 戻り値

このタイムゾーンの規則に従った、tp の UTC 相当値。

[編集] 例外

1) スローします。

[編集] 注釈

結果の精度は少なくとも std::chrono::seconds であり、引数の精度がそれよりも細かい場合は、より細かい精度になります。

曖昧なローカル時刻および存在しないローカル時刻は、タイムゾーンの遷移(夏時間など)の結果として発生する可能性があります。たとえば、"2016-03-13 02:30:00""America/New_York" タイムゾーンに存在しません。一方、"2016-11-06 01:30:00" は、そのタイムゾーンにおいて 2 つの UTC 時刻に対応する可能性があります:2016-11-06 05:30:00 UTC2016-11-06 06:30:00 UTC です。

[編集]

English 日本語 中文(简体) 中文(繁體)