Namensräume
Varianten
Aktionen

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

Von cppreference.com
< cpp‎ | chrono
 
 
 
Definiert in Header <chrono>
struct last_spec

{
    explicit last_spec() = default;

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

last_spec ist ein leerer Tag-Typ, der in Verbindung mit anderen Kalendertypen verwendet wird, um das Letzte in einer Sequenz anzuzeigen. Je nach Kontext kann es den letzten Tag eines Monats bezeichnen (wie in 2018y/February/last, für den letzten Tag des Februars 2018, d.h. 2018-02-28) oder den letzten Wochentag eines Monats (wie in 2018/February/Sunday[last], für den letzten Sonntag des Februars 2018, d.h. 2018-02-25).

[bearbeiten] 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)));
}