Namespaces
Variants

std::chrono::time_zone:: to_sys

From cppreference.net
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) (seit 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) (seit C++20)

Konvertiert die local_time tp in dieser Zeitzone in die entsprechende sys_time .

1) Löst eine Ausnahme aus, wenn die Konvertierung mehrdeutig ist oder wenn tp eine nicht existierende Zeit repräsentiert.
2) Behebt Mehrdeutigkeit entsprechend dem Wert von z :
  • Wenn z == std :: chrono :: choose :: earliest , gibt die frühere sys_time zurück.
  • Wenn z == std :: chrono :: choose :: latest , gibt die spätere sys_time zurück.
Wenn tp einen nicht existierenden Zeitpunkt zwischen zwei UTC- time_point s darstellt, werden diese beiden time_point s identisch sein, und dieser time_point wird zurückgegeben.

Inhaltsverzeichnis

Rückgabewert

Das UTC-Äquivalent von tp gemäß den Regeln dieser Zeitzone.

Exceptions

1) Wirft:

Hinweise

Die Genauigkeit des Ergebnisses beträgt mindestens std::chrono::seconds und wird feiner sein, wenn das Argument eine höhere Präzision aufweist.

Mehrdeutige und nicht existierende lokale Zeiten können als Folge von Zeitzonenwechseln (wie Sommerzeit) auftreten. Beispielsweise existiert "2016-03-13 02:30:00" in der "America/New_York" Zeitzone nicht, während "2016-11-06 01:30:00" in dieser Zeitzone zwei UTC-Zeitpunkten entsprechen kann: 2016 - 11 - 06 05 : 30 : 00 UTC und 2016 - 11 - 06 06 : 30 : 00 UTC .

Beispiel