month_day

表示特定月份的特定日期。 不指定年份。

语法

class month_day; // C++20

成员

名称 说明
构造函数 构造 month_day
day 返回日期值。
month 返回月份值。
ok 检查 month_day 是否有效。

非成员

“属性” 描述
from_stream 使用指定格式从给定流分析 month_day
operator== 确定两个月份是否相等。
operator<=> 将此月份与另一个月份进行比较。 >, >=, <=, <, != 运算符由编译器合成。
operator<< month_day 输出到给定流。

要求

标头: <chrono> (自C++20以来)

命名空间std::chrono

编译器选项: /std:c++latest

构造函数

构造 month_day

1) month_day() = default;
2) constexpr month_day(const month& m, const day& d) noexcept;

参数

d
构造 month_day,其中日期值为 d

m
构造 month_day,其中月份值为 m

备注

1) 默认构造函数不初始化月份或日期值。
2) 构造 month_day,其中月份值初始化为 m,日期值初始化为 d

有关用于指定日期的 C++ 20 语法的信息,请参阅 operator/

示例:创建 month_day

// compile using: /std:c++latest
#include <iostream>
#include <chrono>

using namespace std::chrono;

int main()
{
    month_day md(30d/July);
    month_day md2 = July/30; // another way to construct a month_day

    std::cout << md << '\n' << md2;
    return 0;
}
Jul/30
Jul/30

day

返回日期值。

constexpr day day() const noexcept;

返回值

日期值。

month

返回月份值。

constexpr month month() const noexcept;

返回值

月份值。

ok

检查存储在此 month_day 中的值是否有效。

constexpr bool ok() const noexcept;

返回值

如果 month_day 值有效,则为 true。 否则为 false
如果月份有效且日期小于或等于该月的天数,则 month_day 有效。 2 月有 29 天。

另请参阅

<chrono>
month
month_day
month_day_last
month_weekday
month_weekday_last
operator/