Spec-Zone.ru › C++

std::chrono::weekday_indexed

Определено в заголовке <chrono>
class weekday_indexed;
(с C++20)

Класс weekday_indexed объединяет weekday, представляющую день недели в пролептическом григорианском календаре, с небольшим индексом n в диапазоне [1, 5]. Он представляет собой первый, второй, третий, четвёртый или пятый день недели определённого месяца.

weekday_indexed — это TriviallyCopyable StandardLayoutType.

Члены-функции

(конструктор)
создаёт weekday_indexed
(публичная функция-член)
weekday
доступ к сохранённому weekday
(публичная функция-член)
index
доступ к сохранённому индексу
(публичная функция-член)
ok
проверяет, являются ли день недели и индекс действительными
(публичная функция-член)

Функции без указания класса

operator==
(C++20)
сравнивает два значения weekday_indexed
(функция)
operator<<
(C++20)
выводит weekday_indexed в поток
(шаблон функции)

Вспомогательные классы

std::formatter<std::chrono::weekday_indexed>
(C++20)
поддержка форматирования для weekday_indexed
(специализация шаблона класса)
std::hash<std::chrono::weekday_indexed>
(C++26)
поддержка хеширования для std::chrono::weekday_indexed
(специализация шаблона класса)

Пример

#include <chrono>
#include <iostream>
 
int main()
{
    using namespace std::chrono;
 
    constexpr weekday_indexed wi = Friday[2];
 
    // Indexed weekday can be used at any place where chrono::day can be used:
    constexpr year_month_weekday ymwd = 2021y / August / wi;
    static_assert(ymwd == August / wi / 2021y &&
                  ymwd == wi / August / 2021y);
    std::cout << ymwd << '\n';
 
    constexpr year_month_day ymd{ymwd}; // a conversion
    static_assert(ymd == 2021y / 8 / 13);
    std::cout << ymd << '\n';
}

Возможный вывод:

2021/Aug/Fri[2]
2021-08-13

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/chrono/weekday_indexed

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API