std::chrono::year_month_day
来自 cppreference.cn
定义于头文件 <chrono> |
||
class year_month_day; |
(C++20 起) | |
类year_month_day
表示一个特定的年、月和日。它是一个基于字段的时间点,分辨率为std::chrono::days。std::chrono::years和std::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 是否表示有效日期(公共成员函数) |
[编辑] 非成员函数
(C++20) |
比较两个year_month_day 值(函数) |
(C++20) |
添加或减去一个 year_month_day 和一些年或月(函数) |
(C++20) |
将 year_month_day 输出到流中(函数模板) |
(C++20) |
根据提供的格式从流中解析 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