Namespaces
Variants

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

From cppreference.net
static constexpr time_point min ( ) ;
(C++20 이전)
static constexpr time_point min ( ) noexcept ;
(C++20 이후)

가능한 가장 작은 지속 시간을 가진 time_point 를 반환합니다. 즉, time_point ( duration :: min ( ) ) 입니다.

매개변수

(없음)

반환값

가능한 가장 작은 time_point .

예제

#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();
        // 첫 번째 프레임인 경우 타이머 초기화:
        if (last_frame == steady_min)
            last_frame = current_frame;
        game_time += current_frame - last_frame;
        std::cout << "프레임 그리기: " << std::setprecision(10)
                  << std::setw(8) << game_time.count() << " μs ";
        animate_frame_at_time_offset(game_time.count());
    }
}

가능한 출력:

프레임 그리기:        0 μs *
프레임 그리기:  134.499 μs *****
프레임 그리기:  274.337 μs *****
프레임 그리기:  416.571 μs *******
프레임 그리기:  561.124 μs **