名稱空間
變體
操作

std::chrono::month_day::ok

來自 cppreference.com
< cpp‎ | chrono‎ | month day
 
 
 
 
constexpr bool ok() const noexcept;
(C++20 起)

確定此 month_day 是否儲存了有效的月日組合。

如果 month() 表示一個有效的月份(month().ok() == true),且 unsigned{day()} >= 1,並且 unsigned{day()} <= D,則該組合有效,其中 D 是由 month() 表示的月份中的天數。二月份的天數被認為是 29 天。

[編輯] 返回值

如果月日組合有效,則為 true,否則為 false。

[編輯] 示例

#include <chrono>
#include <iostream>
 
int main()
{
    std::cout << std::boolalpha;
 
    constexpr auto md1{std::chrono::July/15};
    std::cout << (md1.ok()) << ' ';
    constexpr std::chrono::month_day md2{std::chrono::month(14), std::chrono::day(42)};
    std::cout << (md2.ok()) << ' ';
    constexpr auto md3{std::chrono::February/29};
    std::cout << (md3.ok()) << '\n';
}

輸出

true false true