std::chrono::month_day::ok
Von cppreference.com
| constexpr bool ok() const noexcept; |
(seit C++20) | |
Bestimmt, ob diese month_day eine gültige Monats-Tag-Kombination speichert.
Die Kombination ist gültig, wenn month() einen gültigen Monat darstellt (month().ok() == true), unsigned{day()} >= 1 und unsigned{day()} <= D, wobei D die Anzahl der Tage im vom month() dargestellten Monat ist. Die Anzahl der Tage im Februar wird als 29 betrachtet.
[bearbeiten] Rückgabewert
true, wenn die Monats-Tag-Kombination gültig ist, andernfalls false.
[bearbeiten] Beispiel
Führen Sie diesen Code aus
#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'; }
Ausgabe
true false true