std::chrono::year_month_day_last:: operator sys_days, std::chrono::year_month_day_last:: operator local_days
From cppreference.net
<
cpp
|
chrono
|
year month day last
C++
Date and time library
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
std::chrono::year_month_day_last
| Member functions | ||||
|
year_month_day_last::operator sys_days
year_month_day_last::operator local_days
|
||||
| Nonmember functions | ||||
| Helper classes | ||||
|
constexpr
operator
std::
chrono
::
sys_days
(
)
const
noexcept
;
|
(1) | (depuis C++20) |
|
constexpr
explicit
operator
std::
chrono
::
local_days
(
)
const
noexcept
;
|
(2) | (depuis C++20) |
Convertit
*
this
en un
std::chrono::time_point
représentant la même date que ce
year_month_day_last
. Ceci est équivalent à composer un
year_month_day
à partir de
year()
,
month()
et
day()
et à convertir ce
year_month_day
vers le type de destination.
1)
Équivalent à
std::
chrono
::
sys_days
(
year
(
)
/
month
(
)
/
day
(
)
)
.
2)
Équivalent à
std::
chrono
::
local_days
(
year
(
)
/
month
(
)
/
day
(
)
)
.
Exemple
Exécuter ce code
#include <array> #include <chrono> #include <iostream> #include <string_view> using namespace std::chrono; using namespace std::literals; int main() { constexpr std::chrono::year y{2023y}; constexpr std::array quarters{"1st"sv, "2nd"sv, "3rd"sv, "4th"sv}; constexpr auto mq{12 / 4}; // months per quarter std::cout << "En l'année " << static_cast<int>(y) << '\n'; for (auto q = 1; q < 5; ++q) { const auto ls = y / std::chrono::month(q * mq) / Sunday[last]; const auto ld = y / std::chrono::month(q * mq) / last; // subtract last Sunday from last day for day of week const auto index = (sys_days(ld) - sys_days(ls)).count(); std::cout << "Le " << quarters[q - 1] << " trimestre se termine un " << std::chrono::weekday(index) << '\n'; } }
Sortie :
En l'année 2023 Le 1st trimestre se termine un Fri Le 2nd trimestre se termine un Fri Le 3rd trimestre se termine un Sat Le 4th trimestre se termine un Sun
Voir aussi
|
convertit en un
std::chrono::time_point
(fonction membre publique de
std::chrono::year_month_day
)
|