Namespaces
Variants

std::chrono::time_point<Clock,Duration>:: min

From cppreference.net
static constexpr time_point min ( ) ;
(jusqu'à C++20)
static constexpr time_point min ( ) noexcept ;
(depuis C++20)

Retourne un time_point avec la plus petite durée possible, c'est-à-dire time_point ( duration :: min ( ) ) .

Paramètres

(aucun)

Valeur de retour

Le plus petit time_point possible.

Exemple

#include <chrono>
#include <iomanip>
#include <iostream>
#include <ratio>
#include <string>
constexpr auto steady_min = std::chrono::steady_clock::time_point::min();
void animate_frame_at_time_offset(double game_time)
{
    std::cout << std::string(static_cast<int>(game_time) % 10 + 1, '*') << '\n';
}
int main()
{
    auto last_frame = steady_min;
    std::chrono::duration<double, std::micro> game_time{0.0};
    for (int n = 0; n < 5; ++n)
    {
        const auto current_frame = std::chrono::steady_clock::now();
        // initialiser le timer si première frame :
        if (last_frame == steady_min)
            last_frame = current_frame;
        game_time += current_frame - last_frame;
        std::cout << "Dessin de la frame à " << std::setprecision(10)
                  << std::setw(8) << game_time.count() << " μs ";
        animate_frame_at_time_offset(game_time.count());
    }
}

Sortie possible :

Dessin de la frame à        0 μs *
Dessin de la frame à  134.499 μs *****
Dessin de la frame à  274.337 μs *****
Dessin de la frame à  416.571 μs *******
Dessin de la frame à  561.124 μs **