Сравните измеренную разницу во времени с поплавком

У меня есть код, где я хочу измерить разницу во времени в C ++. Через некоторое время, сохраненное в переменной с плавающей точкой, я хочу начать кое-что.
Есть ли способ использовать длительность для плавания или для сравнения со значением?

Вот некоторый код:

float maxDiff = 5;
auto start = std::chrono::high_resolution_clock::now();
//do something
auto finish = std::chrono::high_resolution_clock::now();
std::chrono::duration<double> elapsed = finish - start;
if(elapsed>=maxDiff
{//do something else}

1

Решение

работает следующий код:

float maxDiff = 5;
auto start = std::chrono::high_resolution_clock::now();
//do something
auto finish = std::chrono::high_resolution_clock::now();
std::chrono::duration<float> elapsed = finish - start;
if (elapsed.count() > maxDiff)
{
}

Обратите внимание, что вы можете использовать std::chrono::steady_clock как high_resolution_clock может быть нестабильным (вы можете проверить, позвонив is_steady) а также steady_clock обычно достаточно высокого разрешения для большинства целей и предотвратит проблемы с изменениями системных часов.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]