命名空间
变体
操作

std::chrono::year_month_day

来自 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)
year_month_day
(C++20)
(C++20)
(C++20)
(C++20)(C++20)
chrono I/O
(C++20)

 
 
定义于头文件 <chrono>
class year_month_day;
(C++20 起)

year_month_day表示一个特定的年、月和日。它是一个基于字段的时间点,分辨率为std::chrono::daysstd::chrono::yearsstd::chrono::months导向的算术运算直接支持。到std::chrono::sys_days的隐式转换和从std::chrono::sys_days的隐式转换允许高效地执行std::chrono::days导向的算术运算。

year_month_day是一个TriviallyCopyableStandardLayoutType

目录

[编辑] 成员函数

构造一个year_month_day
(公共成员函数) [编辑]
按月或年修改时间点
(公共成员函数) [编辑]
访问此对象中存储的年、月和日
(公共成员函数) [编辑]
转换为 std::chrono::time_point
(公共成员函数) [编辑]
检查year_month_day是否表示有效日期
(公共成员函数) [编辑]

[编辑] 非成员函数

比较两个year_month_day
(函数) [编辑]
添加或减去一个 year_month_day 和一些年或月
(函数) [编辑]
year_month_day 输出到流中
(函数模板) [编辑]
根据提供的格式从流中解析 year_month_day
(函数模板) [编辑]

[编辑] 辅助类

year_month_day 的格式化支持
(类模板特化) [编辑]
std::chrono::year_month_day的哈希支持
(类模板特化)

[编辑] 示例

#include <chrono>
#include <iostream>
 
int main()
{
    const std::chrono::time_point now{std::chrono::system_clock::now()};
 
    const std::chrono::year_month_day ymd{std::chrono::floor<std::chrono::days>(now)};
 
    std::cout << "Current Year: " << static_cast<int>(ymd.year()) << ", "
                 "Month: " << static_cast<unsigned>(ymd.month()) << ", "
                 "Day: " << static_cast<unsigned>(ymd.day()) << "\n"
                 "ymd: " << ymd << '\n';
}

可能的输出

Current Year: 2023, Month: 9, Day: 4
ymd: 2023-09-04