以下のstopwatch()
を処理したい前後でコールする。
# include <iostream>
# include <chrono>
float stopwatch(std::chrono::system_clock::time_point t = std::chrono::system_clock::now())
{
static std::chrono::system_clock::time_point ref_time;
if (ref_time == std::chrono::system_clock::time_point())
{
ref_time = t;
return 0.0;
}
float elapsed = static_cast<float>(std::chrono::duration_cast<std::chrono::milliseconds>(t - ref_time).count());
ref_time = t;
return elapsed;
}
int main(int argc, char *argv[])
{
stopwatch();
// 時間測定したい処理
std::cout << "process time: " << stopwatch() << "[ms]" << std::endl;
return 0;
}