std::literals::chrono_literals::operator""h
| Definido en el archivo de encabezado <chrono>
|
||
constexpr chrono::hours operator "" h(unsigned long long hrs);
|
(1) | (desde C++14) |
constexpr chrono::duration/*no especificado*/, std::ratio<3600,1>>
operator "" h(long double hrs);
|
(2) | (desde C++14) |
Forma un literal std::chrono::duration que representa horas.
std::chrono::hours(hrs).Parámetros
| hrs | - | El número de horas. |
Valor de retorno
El literal std::chrono::duration.
Posible implementación
constexpr std::chrono::hours operator ""h(unsigned long long h)
{
return std::chrono::hours(h);
}
constexpr std::chrono::duration<long double, ratio<3600,1>> operator ""h(long double h)
{
return std::chrono::duration<long double, std::ratio<3600,1>>(h);
}
|
Notas
Estos operadores están declarados en el espacio de nombres std::literals::chrono_literals, donde tanto literals como chrono_literals son espacios de nombres en línea. El acceso a estos operadores se puede obtener con using namespace std::literals, using namespace std::chrono_literals, y using namespace std::literals::chrono_literals.
Además, dentro del espacio de nombres std::chrono, la directiva using namespace literals::chrono_literals; se suministra por la biblioteca estándar, de modo que si un programador utiliza using namespace std::chrono; para obtener acceso a las clases en la biblioteca chrono, los operadores de literal correspondientes también se vuelven visibles.
Ejemplo
#include <iostream>
#include <chrono>
int main()
{
using namespace std::chrono_literals;
auto dia = 24h;
auto mediahora = 0.5h;
std::cout << "Un día es " << dia.count() << " horas\n"
<< "Media hora es " << mediahora.count() << " horas\n";
}
Salida:
Un día es 24 horas
Media hora es 0.5 horas
Véase también
| Construye una nueva duración. (función miembro pública de std::chrono::duration)
|