std::chrono::time_point<Clock,Duration>::min
Von cppreference.com
< cpp | chrono | time point
static constexpr time_point min(); |
(bis C++20) | |
| static constexpr time_point min() noexcept; |
(seit C++20) | |
Gibt einen time_point mit der kleinstmöglichen Dauer zurück, d.h. time_point(duration::min()).
[bearbeiten] Parameter
(keine)
[bearbeiten] Rückgabewert
Der kleinstmögliche time_point.
[bearbeiten] Beispiel
Führen Sie diesen Code aus
#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(); // initialize timer if first frame ever: if (last_frame == steady_min) last_frame = current_frame; game_time += current_frame - last_frame; std::cout << "Drawing frame at " << std::setprecision(10) << std::setw(8) << game_time.count() << " μs "; animate_frame_at_time_offset(game_time.count()); } }
Mögliche Ausgabe
Drawing frame at 0 μs * Drawing frame at 134.499 μs ***** Drawing frame at 274.337 μs ***** Drawing frame at 416.571 μs ******* Drawing frame at 561.124 μs **