Defined in header <chrono> | ||
---|---|---|
constexpr std::chrono::year operator ""y( unsigned long long y ) noexcept; | (since C++20) |
Forms a std::chrono::year
literal representing a year in the proleptic Gregorian calendar.
y | - | the year value |
A std::chrono::year
initialized from int(y)
. If y
is not in the range [-32767, 32767]
, the stored value is unspecified.
constexpr std::chrono::year operator ""y(unsigned long long y) noexcept { return std::chrono::year(static_cast<int>(y)); } |
This operator is declared in the namespace std::literals::chrono_literals
, where both literals
and chrono_literals
are inline namespaces. Access to this operator can be gained with:
using namespace std::literals
, using namespace std::chrono_literals
, or using namespace std::literals::chrono_literals
. In addition, within the namespace std::chrono
, the directive using namespace literals::chrono_literals;
is provided by the standard library, so that if a programmer uses using namespace std::chrono;
to gain access to the classes in the chrono library, the corresponding literal operators become visible as well.
#include <iostream> #include <chrono> int main() { using namespace std::literals; std::cout << int(2020y) << ' ' << int(-220y) << ' ' << int(3000y) << ' ' << int(32768y) << ' ' // unspecified << int(65578y) << '\n'; // unspecified }
Possible output:
2020 -220 3000 -32768 42
constructs a year (public member function of std::chrono::year ) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/chrono/operator%22%22y