GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
std::chrono::zoned_time::zoned_time(3) C++ Standard Libary std::chrono::zoned_time::zoned_time(3)

std::chrono::zoned_time::zoned_time - std::chrono::zoned_time::zoned_time


zoned_time(); (1) (since C++20)
zoned_time( const std::chrono::sys_time<Duration>& st ); (2) (since C++20)
zoned_time( const zoned_time& other) = default; (3) (since C++20)
template< class Duration2 >
zoned_time( const std::chrono::zoned_time<Duration2, (4) (since C++20)
TimeZonePtr>& other );
explicit zoned_time( TimeZonePtr z ); (5) (since C++20)
explicit zoned_time( std::string_view name ); (6) (since C++20)
zoned_time( TimeZonePtr z, const std::chrono::sys_time<Duration>& (7) (since C++20)
st );
zoned_time( std::string_view name, const (8) (since C++20)
std::chrono::sys_time<Duration>& st );
zoned_time( TimeZonePtr z, const (9) (since C++20)
std::chrono::local_time<Duration>& tp );
zoned_time( std::string_view name, const (10) (since C++20)
std::chrono::local_time<Duration>& tp );
zoned_time( TimeZonePtr z, const
std::chrono::local_time<Duration>& tp, (11) (since C++20)
std::chrono::choose c );
zoned_time( std::string_view name,
const std::chrono::local_time<Duration>& tp, std::chrono::choose (12) (since C++20)
c );
template< class Duration2, class TimeZonePtr2 >


zoned_time( TimeZonePtr z, (13) (since C++20)


const std::chrono::zoned_time<Duration2, TimeZonePtr2>& zt );
template< class Duration2, class TimeZonePtr2 >


zoned_time( TimeZonePtr z, (14) (since C++20)
const std::chrono::zoned_time<Duration2, TimeZonePtr2>& zt,


std::chrono::choose );
template< class Duration2, class TimeZonePtr2 >


zoned_time( std::string_view name, (15) (since C++20)


const std::chrono::zoned_time<Duration2, TimeZonePtr2>& zt );
template< class Duration2, class TimeZonePtr2 >


zoned_time( std::string_view name, (16) (since C++20)
const std::chrono::zoned_time<Duration2, TimeZonePtr2>& zt,


std::chrono::choose );


Constructs a zoned_time object, initializing the stored time zone pointer and time
point according to the following table, where traits is
std::chrono::zoned_traits<TimeZonePtr>:


Overload Time zone pointer (denoted Time point (a Notes
zone) std::chrono::sys_time<duration>)
(1) traits::default_zone() default constructed (a)
(2) st
(3) other.get_time_zone() other.get_sys_time() (b)
(4) other.get_time_zone() other.get_sys_time() (e)
(5) std::move(z) default constructed
(6) traits::locate_zone(name) (c)
(7) std::move(z) st
(8) traits::locate_zone(name) (c)
(9) std::move(z) zone->to_sys(tp) (d)
(10) traits::locate_zone(name) (c,d)
(11) std::move(z) zone->to_sys(tp, c) (d)
(12) traits::locate_zone(name) (c,d)
(13-14) std::move(z) zt.get_sys_time() (e)
(15-16) traits::locate_zone(name) (c,e)


a) Constructors specified to call traits::default_zone() (1-2) do not participate in
overload resolution if that expression is not well-formed.
b) The defaulted copy constructor (3) is defined as deleted if
std::is_copy_constructible_v<TimeZonePtr> is false.
c) Constructors with a std::string_view parameter name (6,8,10,12,15-16) do not
participate in overload resolution if traits::locate_zone(name) is not well-formed
or if that expression is not convertible to TimeZonePtr.
d) Constructors specified to call zone->to_sys (9-12) do not participate in overload
resolution if that call expression is not well-formed or if the result is not
convertible to std::chrono::sys_time<duration>.
e) Constructors with a template parameter Duration2 (4,13-16) do not participate in
overload resolution if Duration2 is not convertible to Duration.


The behavior is undefined if the time zone pointer (initialized as described above)
does not refer to a time zone.


zoned_time does not have a move constructor and attempting to move one will perform
a copy instead using the defaulted copy constructor (3). Thus, when TimeZonePtr is a
move-only type, zoned_time is immovable: it can be neither moved nor copied.


The constructors (14,16) accept a std::chrono::choose parameter, but that parameter
has no effect.

// Run this code


#include <chrono>
#include <iostream>
#include <string_view>


int main()
{
using std::chrono_literals::operator""y;
using std::operator""sv;


const auto now = std::chrono::floor<std::chrono::minutes>(std::chrono::system_clock::now());


{
std::cout << std::chrono::zoned_time{} << " : default\n";
}
{
constexpr std::string_view location {"America/Phoenix"sv};
std::cout << std::chrono::zoned_time{ location } << " : " << location << '\n';
}
{
const std::chrono::time_zone* TimeZonePtr = std::chrono::locate_zone("UTC");
std::cout << std::chrono::zoned_time{ TimeZonePtr } << " : UTC time zone\n";
}
{
constexpr auto location{"Europe/Rome"sv};
std::cout << std::chrono::zoned_time{ location, std::chrono::local_days{2021y/12/31} }
<< " : " << location << '\n';
}
{
constexpr auto location {"Europe/Rome"sv};
constexpr auto some_date = std::chrono::sys_time<std::chrono::days>{2021y/12/31};
std::cout << std::chrono::zoned_time{ location, some_date } << " : " << location << '\n';
}
{
constexpr auto location {"Europe/Rome"sv};
std::cout << std::chrono::zoned_time{ location, now } << " : " << location << '\n';
}
{
constexpr auto NewYork {"America/New_York"sv};
constexpr auto Tokyo {"Asia/Tokyo"sv};
const std::chrono::zoned_time tz_Tokyo {Tokyo, now};
const std::chrono::zoned_time tz_NewYork {NewYork, now};
std::cout << std::chrono::zoned_time{ Tokyo, tz_NewYork } << " : " << Tokyo << '\n';
std::cout << std::chrono::zoned_time{ NewYork, tz_Tokyo } << " : " << NewYork << '\n';
}
}


1970-01-01 00:00:00 UTC : default
1969-12-31 17:00:00 MST : America/Phoenix
1970-01-01 00:00:00 UTC : UTC time zone
2021-12-31 00:00:00 CET : Europe/Rome
2021-12-31 01:00:00 CET : Europe/Rome
2021-09-20 23:04:00 CEST : Europe/Rome
2021-09-21 06:04:00 JST : Asia/Tokyo
2021-09-20 17:04:00 EDT : America/New_York

2022.07.31 http://cppreference.com

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.