Tic/Toc统计程序运行时间的方法在matlab中见过,最近在学习VINS的过程中也见到了,摘抄如下:
#pragma once
#include <ctime>
#include <cstdlib>
#include <chrono>
class TicToc
{
  public:
    TicToc()
    {
        tic();
    }
    void tic()
    {
        start = std::chrono::system_clock::now();
    }
    double toc()
    {
        end = std::chrono::system_clock::now();
        std::chrono::duration<double> elapsed_seconds = end - start;
        return elapsed_seconds.count() * 1000;
    }
  private:
    std::chrono::time_point<std::chrono::system_clock> start, end;
};
    
     深入理解std::chrono的时钟Clock
    
    :
    
     https://www.cnblogs.com/zhongpan/p/7490657.html
    
    
    std::chrono是C++11引入的日期时间处理库,其中包含3种时钟:system_clock,steady_clock,high_resolution_clock。
    
    近来需要使用高精度时间,很自然想到使用high_resolution_clock,然而使用后发现并非预期的得到自1970/1/1零点之后的计数,而是一个小得多的数字。
    
    那么这三种时钟有什么区别,用在什么情况下,我们来一探究竟。
    
    
    
    
   
 
版权声明:本文为chengde6896383原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。