std::literals::chrono_literals::operator""s
| Definido en el archivo de encabezado <chrono>
|
||
constexpr chrono::seconds operator "" s(unsigned long long secs); |
(1) | (desde C++14) |
constexpr chrono::duration/*no especificado*/> operator "" s(long double secs); |
(2) | (desde C++14) |
Forma un literal std::chrono::duration que representa segundos.
std::chrono::seconds(secs).Parámetros
| secs | - | El número de segundos. |
Valor de retorno
El literal std::chrono::duration.
Posible implementación
constexpr std::chrono::seconds operator ""s(unsigned long long s)
{
return std::chrono::seconds(s);
}
constexpr std::chrono::duration<long double> operator ""s(long double s)
{
return std::chrono::duration<long double>(s);
}
|
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.
std::string también define operator""s, para representar objetos literales de tipo std::string, pero es un literal de cadena: 10s son diez segundos, pero "10"s es una cadena de dos caracteres.
Ejemplo
#include <iostream>
#include <chrono>
int main()
{
using namespace std::chrono_literals;
std::chrono::seconds mediominuto = 30s;
std::cout << "Medio minuto es " << mediominuto.count() << " segundos.\n"
<< "Un minuto y un segundo es " << (1min + 1s).count() << " segundos.\n";
}
Salida:
Medio minuto es 30 segundos.
Un minuto y un segundo es 61 segundos.
Véase también
| Construye una nueva duración. (función miembro pública de std::chrono::duration)
|