std::chrono:: operator+, std::chrono:: operator- (std::chrono::month)
|
Definido en el encabezado
<chrono>
|
||
|
constexpr
std::
chrono
::
month
operator
+
(
const
std::
chrono
::
month
&
m,
const std:: chrono :: months & ms ) noexcept ; |
(1) | (desde C++20) |
|
constexpr
std::
chrono
::
month
operator
+
(
const
std::
chrono
::
months
&
ms,
const std:: chrono :: month & m ) noexcept ; |
(2) | (desde C++20) |
|
constexpr
std::
chrono
::
month
operator
-
(
const
std::
chrono
::
month
&
m,
const std:: chrono :: months & ms ) noexcept ; |
(3) | (desde C++20) |
|
constexpr
std::
chrono
::
months
operator
-
(
const
std::
chrono
::
month
&
m1,
const std:: chrono :: month & m2 ) noexcept ; |
(4) | (desde C++20) |
[
0
,
11
]
, y luego sumando 1.
[
0
,
11
]
y
m2
+
m
==
m1
. De lo contrario, el valor retornado no está especificado.
Contenidos |
Valor de retorno
Notas
Siempre que el cálculo no desborde, (1-3) siempre devuelve un mes válido incluso si m. ok ( ) es false .
El resultado de restar dos valores de
month
es una duración de tipo
std::chrono::months
. Esa unidad de duración representa la longitud promedio del mes gregoriano, y la duración resultante no guarda relación con el número de días en los meses particulares representados por los operandos. Por ejemplo,
std::
chrono
::
seconds
(
std::
chrono
::
April
-
std::
chrono
::
March
)
no es el número de segundos en marzo (
2678400s
), sino
2629746s
(30.436875 días).
Ejemplo
#include <cassert> #include <chrono> int main() { std::chrono::month m{6}; m = m + std::chrono::months(2); assert(m == std::chrono::month(8)); m = m - std::chrono::months(3); assert(m == std::chrono::month(5)); constexpr std::chrono::months ms = std::chrono::month(8) - std::chrono::month(6); static_assert(ms == std::chrono::months(2)); }
Véase también
|
incrementa o decrementa el mes
(función miembro pública) |
|
|
suma o resta un número de meses
(función miembro pública) |