std::chrono::zoned_time

From cppreference.com
< cpplrm; | chrono
Date and time utilities
(C++11)
(C++11)
Clocks
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
Calendars
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
Time zones
(C++20)
(C++20)
(C++20)
zoned_time
(C++20)
(C++20)
(C++20)
C-style date and time
Defined in header <chrono>
template <

class Duration,
class TimeZonePtr = const std::chrono::time_zone*

> class zoned_time;
(since C++20)

The class zoned_time represents a logical pairing of a time zone and a std::chrono::time_point whose resolution is Duration.

An invariant of zoned_time is that it always refers to a valid time zone and represents an existing and unambiguous time point in that time zone. Consistent with this invariant, zoned_time has no move constructor or move assignment operator; attempts to move a zoned_time will perform a copy.

The program is ill-formed if Duration is not a specialization of std::chrono::duration.

The template parameter TimeZonePtr allows users to supply their own time zone pointer types and further customize the behavior of zoned_time via std::chrono::zoned_traits. Custom time zone types need not support all the operations supported by std::chrono::time_zone, only those used by the functions actually called on the zoned_time.

TimeZonePtr must be MoveConstructible. Move-only TimeZonePtrs are allowed but difficult to use, as the zoned_time will be immovable and it is not possible to access the stored TimeZonePtr.

Member types

Member type Definition
duration std::common_type_t<Duration, std::chrono::seconds>

Member functions

constructs a zoned_time
(public member function)
assigns value to a zoned_time
(public member function)
obtains a copy of the time zone pointer
(public member function)
obtains the stored time point as a local_time
(public member function)
obtains the stored time point as a sys_time
(public member function)
obtain information about the time zone at the stored time point
(public member function)

Nonmember functions

compares two zoned_time objects
(function template)
outputs a zoned_time into a stream
(function template)
outputs a zoned_time into a stream according to the provided format
(function template)

Deduction guides