mirror of
https://github.com/HowardHinnant/date.git
synced 2025-08-05 05:34:27 +02:00
Updated Examples and Recipes (markdown)
@@ -320,15 +320,16 @@ This example demonstrates both some simple date arithmetic, and how to handle di
|
|||||||
using namespace date;
|
using namespace date;
|
||||||
// Dave was born April 24, 1954. 10:03 AM pst
|
// Dave was born April 24, 1954. 10:03 AM pst
|
||||||
// Want to know when he is 2 Gigaseconds old
|
// Want to know when he is 2 Gigaseconds old
|
||||||
auto birthday = make_zoned("America/Los_Angeles", local_days{apr/24/1954} + 10h + 3min);
|
auto birthday = make_zoned("America/Los_Angeles",
|
||||||
std::cout << "born : " << birthday << '\n';
|
local_days{apr/24/1954} + 10h + 3min);
|
||||||
|
std::cout << "born : " << birthday << '\n';
|
||||||
birthday = birthday.get_sys_time() + 2'000'000'000s;
|
birthday = birthday.get_sys_time() + 2'000'000'000s;
|
||||||
std::cout << "2Gs birthday: " << birthday << '\n';
|
std::cout << "2Gs birthday: " << birthday << '\n';
|
||||||
}
|
}
|
||||||
|
|
||||||
One first creates the local time, and then pairs that to the time zone "America/Los_Angeles" using `make_zoned`. Then add 2Gs to the `sys_time` (not the `local_time`) of `birthday`. This outputs:
|
One first creates the local time, and then pairs that to the time zone "America/Los_Angeles" using `make_zoned`. Then add 2Gs to the `sys_time` (not the `local_time`) of `birthday`. This outputs:
|
||||||
|
|
||||||
born : 1954-04-24 10:03:00 PST
|
born : 1954-04-24 10:03:00 PST
|
||||||
2Gs birthday: 2017-09-08 14:36:20 PDT
|
2Gs birthday: 2017-09-08 14:36:20 PDT
|
||||||
|
|
||||||
Note that without handling the timezone correctly, this result would be an hour off (2017-09-08 13:36:20) because the birth date falls in PST, and the celebration date falls in PDT.
|
Note that without handling the timezone correctly, this result would be an hour off (2017-09-08 13:36:20) because the birth date falls in PST, and the celebration date falls in PDT.
|
||||||
|
Reference in New Issue
Block a user