year() = default; | (1) | (since C++20) |
constexpr explicit year( int y ) noexcept; | (2) | (since C++20) |
Constructs a year
object.
y
is in the range [-32767, 32767], constructs a year
object holding the year value y
. Otherwise the value held is unspecified.#include <chrono> #include <iostream> int main() { using namespace std::chrono; constexpr int leap_years = [] { int count{}; for (int i{year::min()}; i <= int{year::max()}; ++i) if (year{i}.is_leap()) // uses constructor (2) ++count; return count; } (); static_assert(15891 == leap_years); std::cout << "There are " << leap_years << " leap years in the range [" << int(year::min()) << ", " << int(year::max()) << "].\n"; }
Output:
There are 15891 leap years in the range [-32767, 32767].
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/chrono/year/year