std::chrono:: year_month_day
From cppreference.net
|
定义于头文件
<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::days
为导向的算术运算。
year_month_day
是一个
TriviallyCopyable
StandardLayoutType
。
目录 |
成员函数
构造
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 << "当前年份:" << static_cast<int>(ymd.year()) << "," "月份:" << static_cast<unsigned>(ymd.month()) << "," "日期:" << static_cast<unsigned>(ymd.day()) << "\n" "ymd:" << ymd << '\n'; }
可能的输出:
当前年份:2023,月份:9,日期:4 ymd:2023-09-04