std::chrono::year_month_weekday::year, std::chrono::year_month_weekday::month, std::chrono::year_month_weekday::weekday, std::chrono::year_month_weekday::index, std::chrono::year_month_weekday::weekday_indexed
From cppreference.com
< cpp | chrono | year month weekday
constexpr std::chrono::year year() const noexcept; |
(1) | (since C++20) |
constexpr std::chrono::month month() const noexcept; |
(2) | (since C++20) |
constexpr std::chrono::weekday weekday() const noexcept; |
(3) | (since C++20) |
constexpr unsigned index() const noexcept; |
(4) | (since C++20) |
constexpr std::chrono::weekday_indexed weekday_indexed() const noexcept; |
(5) | (since C++20) |
Retrieves the field values stored in this year_month_weekday
object.
Return value
1) Returns the stored std::chrono::year value.
2) Returns the stored std::chrono::month value.
3) Returns the stored std::chrono::weekday value.
4) Returns the stored weekday index.
5) weekday()[index()]
Example
Run this code
#include <cassert> #include <chrono> int main() { constexpr auto ym{std::chrono::year(2021)/std::chrono::January}; constexpr auto wdi{std::chrono::Wednesday[1]}; auto ymwdi{ym/wdi}; const auto index{ymwdi.index() + 1}; auto weekday{ymwdi.weekday() + std::chrono::days(1)}; ymwdi = {ymwdi.year()/ymwdi.month()/weekday[index]}; // Second Thursday in January, 2021 assert(std::chrono::year_month_day{ymwdi} == std::chrono::January/14/2021); }