std的时间计算

#include<chrono>
-----------------------------------------1--------------------------------------------
std::chrono::steady_clock::time_point start = std::chrono::steady_clock::now();//开始时间
============
do something
============
std::chrono::steady_clock::time_point end = std::chrono::steady_clock::now();//结束时间
std::chrono::duration<double> during = std::chrono::duration_cast<std::chrono::duration<double> >(end - start);//时间差
std::cout.setf(std::ios::fixed);//设定输出格式
std::cout << std::endl << "optimazition is " << std::fixed << std::setprecision(3)//保留三位精度

<< during.count() * 1000 << " ms" << std::endl;//将计数器的微秒转为毫秒,并保留显示小数点后三位

-----------------------------------------2-------------------------------------------
start = std::chrono::system_clock::now();
============
do something
============
end = std::chrono::system_clock::now();
std::chrono::duration<double> elapsed_seconds = end - start;
    return elapsed_seconds.count() * 1000;

-----------------------------------3 构建一个通用的类-----------------------------------
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;
};

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值