命名空间
变体
操作

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

来自 cppreference.cn
< cpp‎ | chrono
 
 
日期和时间库
时间点
(C++11)
(C++20)
时长
(C++11)
时钟
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
日间时间
(C++20)(C++20)
(C++20)(C++20)
(C++20)
日历
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
last_speclast
(C++20)(C++20)
chrono I/O
(C++20)

 
定义于头文件 <chrono>
struct last_spec

{
    explicit last_spec() = default;

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

last_spec 是一个空标签类型,与其他日历类型结合使用,表示序列中的最后一个。根据上下文,它可能表示一个月的最后一天(例如 2018y/February/last,表示2018年2月的最后一天,即2018-02-28),或者一个月中星期几的最后一天(例如 2018/February/Sunday[last],表示2018年2月的最后一个星期日,即2018-02-25)。

[编辑] 示例

#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)));
}