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 values
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 <iostream> #include <chrono> int main() { std::cout << std::boolalpha; constexpr auto ym {std::chrono::year(2021)/std::chrono::January}; constexpr auto wdi {std::chrono::Wednesday[1]}; auto ymwdi {ym/wdi}; 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 std::cout << (std::chrono::year_month_day{ymwdi} == std::chrono::January/14/2021) << '\n'; }
Output:
true