Oharra
Orrialde honetara sartzeak baimena behar du. Saioa hasteko edo direktorioak aldatzen saia zaitezke.
Orrialde honetara sartzeak baimena behar du. Direktorioak aldatzen saia zaitezke.
Clase
Representa un año en el calendario gregoriano.
Sintaxis
class year; // C++20
Comentarios
Un year puede contener un valor de año entre -32767 y 32767.
Miembros
| Nombre | Descripción |
|---|---|
| Constructores | Construyen un elemento year |
is_leap |
Determine si el año es un año bisiesto. |
max |
Devuelve el valor de año más grande posible. |
min |
Devuelve el valor de año más pequeño posible. |
ok |
Compruebe que el valor del año esté en el intervalo válido [-32767, 32767]. |
operator+ |
Unario más. |
operator++ |
Incrementa el año. |
operator+= |
Suma el número especificado de años a este year. |
operator- |
Unario menos. |
operator-- |
Disminuye el año. |
operator-= |
Resta el número especificado de años de este year. |
operator int |
Obtiene el valor de year. |
No miembros
| Nombre | Descripción |
|---|---|
from_stream |
Analiza un year desde la secuencia especificada con el formato especificado |
operator+ |
Agrega años. |
operator- |
Resta años. |
operator== |
Determina si dos años son iguales. |
operator<=> |
Compara este elemento year con otro elemento year. El compilador sintetiza los operadores >, >=, <=, <, !=. |
operator<< |
Genera un elemento year en la secuencia especificada. |
operator""y |
Crear un year literal. |
Requisitos
Encabezado: <chrono> (desde C++20)
Espacio de nombres: std::chrono
Opción del compilador: /std:c++latest
Constructores
Construya un elemento year.
1) year() = default;
2) explicit constexpr year(unsigned y) noexcept;
Parámetros
y
Construye un objeto year con el valor y.
Comentarios
1) El constructor predeterminado no inicializa el valor year.
2) Construye un objeto year con los valores especificados.
Ejemplo: Creación de un objeto year
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
year y{2020};
year y2 = 2021y;
std::cout << y << ", " << y2;
return 0;
}
2020, 2021
is_leap
Compruebe si el valor almacenado en esta instancia de year se encuentra en el intervalo válido.
constexpr bool is_leap() const noexcept;
Valor devuelto
true si el valor del año es bisiesto. En caso contrario, es false.
Un año bisiesto es un año divisible por 4, pero no 100--o es divisible por 400.
max
Devuelve el año más grande posible.
static constexpr year max() noexcept;
Valor devuelto
year{32767}
min
Devuelve el año más pequeño posible.
static constexpr year min() noexcept;
Valor devuelto
year{-32767}
ok
Compruebe si el valor almacenado en esta instancia de year se encuentra en el intervalo válido.
constexpr bool ok() const noexcept;
Valor devuelto
true si el valor del año está en el rango [-32676, 32767]. En caso contrario, es false.
operator+
Aplicar unario más.
constexpr year operator+() const noexcept;
Valor devuelto
Devuelve *this
Ejemplo: operator+ unario
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
year y{-1};
std::cout << +y;
return 0;
}
-0001
operator++
Agregue 1 al valor del año.
1) constexpr year& operator++() noexcept;
2) constexpr year operator++(int) noexcept;
Valor devuelto
1) Devuelve una referencia a este año después de que se haya incrementado (un incremento postfijo).
2) Devuelve una copia de year, antes de que se incrementara (un incremento prefijo).
Ejemplo: operator++
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
year y{2021};
std::cout << y << " " << ++y << "\n"; // constexpr year& operator++() noexcept
std::cout << y << " " << y++ << "\n"; // constexpr year operator++(int) noexcept
std::cout << y << "\n";
return 0;
}
2021 2022
2022 2022
2023
Comentarios
Si el resultado incrementado supera 32767, se desborda a -32768
operator-
Unario menos. Niega el objeto year.
constexpr year operator-() const noexcept; // C++20
Valor devuelto
Devuelve una copia negada de year.
Ejemplo: operator- unario
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
year y{1977};
std::cout << -y << '\n';
return 0;
}
-1977
operator--
Resta 1 del valor de año.
1) constexpr year& operator--() noexcept;
2) constexpr year operator--(int) noexcept;
Valor devuelto
1) Una referencia a esto year después de que se haya decrementado (un postfijo decremento).
2) Una copia del antes de year que se haya decrementado (un prefijo decremento).
Ejemplo: operator--
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
year y{2021};
std::cout << y << " " << --y << "\n"; // constexpr year& operator++() noexcept
std::cout << y << " " << y-- << "\n"; // constexpr year operator++(int) noexcept
std::cout << y << "\n";
return 0;
}
2021 2020
2020 2020
2019
Comentarios
Si el resultado reducido es menor que -32768, se establece en 32767.
operator+=
Suma días a este year.
constexpr year& operator+=(const years& y) noexcept;
Parámetros
y
Número de años que se van a agregar.
Valor devuelto
*this si el resultado incrementado supera 32767, se desborda a -32768.
operator-=
Resta días de este elemento year.
constexpr year& operator-=(const years& y) noexcept;
Parámetros
y
Número de años que se va a restar.
Valor devuelto
*this. Si el resultado reducido es menor que -32768, se establece en 32767.
operator int
Obtiene el valor de year.
explicit constexpr operator int() const noexcept;
Valor devuelto
El valor de year
Ejemplo: operator int()
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
year y{2020};
int yearValue = static_cast<int>(y);
std::cout << yearValue;
return 0;
}
2020
Consulte también
<chrono>
year_month
year_month_day
year_month_day_last
year_month_weekday
year_month_weekday_last
Referencia de archivos de encabezado