Espacios de nombres
Variantes

std::chrono::system_clock::now

De cppreference.com
 
 
Biblioteca de servicios
Apoyo del lenguaje
Apoyo de tipos (tipos básicos, RTTI)
Macros de prueba de característica de la biblioteca (C++20)
Servicios de programa
Funciones variádicas
Apoyo de corrutinas (C++20)
Apoyo de contratos (C++26)
Comparación de tres vías (C++20)
(C++20)
(C++20)(C++20)(C++20)  
(C++20)(C++20)(C++20)

 
 
 
static std::chrono::time_point<std::chrono::system_clock> now() noexcept;
(desde C++11)

Devuelve un punto de tiempo que representa el punto en el tiempo actual.

Parámetros

(Ninguno)

Valor de retorno

Un punto de tiempo que representa el tiempo actual.

Ejemplo

#include <iostream>
#include <iomanip>
#include <vector>
#include <numeric>
#include <chrono>

volatile int sink;
int main()
{
    std::cout << std::fixed << std::setprecision(9) << std::left;
    for (auto size = 1ull; size < 1000'000'000ull; size *= 100) {
        // registrar tiempo de inicio
        auto start = std::chrono::system_clock::now();
        // hacer algo de trabajo
        std::vector<int> v(size, 42);
        sink = std::accumulate(v.begin(), v.end(), 0u); // asegrarse que sea un efecto secundario
        // registrar tiempo del fin
        auto end = std::chrono::system_clock::now();
        std::chrono::duration<double> diff = end - start;
        std::cout << "Tiempo de llenar e iterar sobre un vector de " << std::setw(9)
                  << size << " enteros : " << diff.count() << " s\n";
    }
}

Posible salida:

Tiempo de llenar e iterar sobre un vector de 1         enteros : 0.000006568 s
Tiempo de llenar e iterar sobre un vector de 100       enteros : 0.000002854 s
Tiempo de llenar e iterar sobre un vector de 10000     enteros : 0.000116290 s
Tiempo de llenar e iterar sobre un vector de 1000000   enteros : 0.011742752 s
Tiempo de llenar e iterar sobre un vector de 100000000 enteros : 0.505534949 s
Morty Proxy This is a proxified and sanitized view of the page, visit original site.