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) (depuis 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) (depuis C++20)

Convertit le local_time tp dans ce fuseau horaire en sys_time correspondant.

1) Lève une exception si la conversion est ambiguë ou si tp représente un temps inexistant.
2) Résout l'ambiguïté selon la valeur de z :
  • Si z == std :: chrono :: choose :: earliest , retourne le sys_time le plus précoce.
  • Si z == std :: chrono :: choose :: latest , retourne le sys_time le plus tardif.
Si tp représente un temps inexistant entre deux time_point UTC, ces deux time_point seront identiques, et ce time_point sera retourné.

Table des matières

Valeur de retour

L'équivalent UTC de tp selon les règles de ce fuseau horaire.

Exceptions

1) Lance :

Notes

La précision du résultat est au moins de std::chrono::seconds , et sera plus fine si l'argument a une précision plus fine.

Les heures locales ambiguës et inexistantes peuvent survenir en raison des transitions de fuseaux horaires (comme l'heure d'été). Par exemple, "2016-03-13 02:30:00" n'existe pas dans le fuseau horaire "America/New_York" , tandis que "2016-11-06 01:30:00" dans ce fuseau horaire peut correspondre à deux points temporels UTC : 2016 - 11 - 06 05 : 30 : 00 UTC et 2016 - 11 - 06 06 : 30 : 00 UTC .

Exemple