Namespaces
Variants

std::chrono:: last_spec, std::chrono:: last

From cppreference.net
Definiert im Header <chrono>
struct last_spec

{
explicit last_spec ( ) = default ;

} ;
(seit C++20)
inline constexpr last_spec last { } ;
(seit C++20)

last_spec ist ein leeres Tag-Typ, das in Verbindung mit anderen Kalendertypen verwendet wird, um das letzte Element in einer Sequenz anzuzeigen. Abhängig vom Kontext kann es den letzten Tag eines Monats anzeigen (wie in 2018y / February / last , für den letzten Tag des Februars 2018, d.h. 2018-02-28) oder den letzten Wochentag in einem Monat (wie in 2018 / February / Sunday [ last ] , für den letzten Sonntag im Februar 2018, d.h. 2018-02-25).

Beispiel

#include <chrono>
int main()
{
    using namespace std::chrono;
    constexpr auto mdl {June/last};
    static_assert(mdl == month_day_last(month(6)));
    constexpr auto ymwdl {year(2023)/December/Tuesday[last]};
    static_assert(ymwdl ==
        year_month_weekday_last(year(2023), month(12), weekday_last(Tuesday)));
}