std::chrono::year::year(3) | C++ Standard Libary | std::chrono::year::year(3) |
NAME¶
std::chrono::year::year - std::chrono::year::year
Synopsis¶
year() = default; (1) (since C++20)
constexpr explicit year( int y ) noexcept; (2) (since
C++20)
Constructs a year object.
1) Default constructor leaves the year value uninitialized.
2) If y is in the range [-32767, 32767], constructs a year object holding the
year
value y. Otherwise the value held is unspecified.
Example¶
// Run this code
#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].
2024.06.10 | http://cppreference.com |