C++ 精确计时类

因为平时经常要测试代码的执行效率,所以非常需要一个Timer.

So,上网搜了下还真有 http://blog.sina.com.cn/s/blog_5fe506110100dgfd.html

在此感谢作者,自己修改了下,收藏。

//精确计时类#ifndef __MyTimer_H__#define __MyTimer_H__#include <windows.h>class MyTimer{private:    LARGE_INTEGER  _freq;    LARGE_INTEGER  _begin;    LARGE_INTEGER  _end;public:    double costTime;            // 花费的时间 , 根据自己需要换算时间单位public:    MyTimer()    {        QueryPerformanceFrequency(&_freq);//获得计数器(cpu)的时钟频率        costTime = 0;     }    void Start()            // 开始计时    {        QueryPerformanceCounter(&_begin);    }    void Stop()               // 结束计时    {        QueryPerformanceCounter(&_end);        costTime = (double)((_end.QuadPart - _begin.QuadPart) * 1000000 / _freq.QuadPart); //花费的时间(精确到微秒 us )    }    void Reset()            // 计时清0    {        costTime = 0;    }};#endif
int main(){     vector<int> num;     int i,element;   int array[C_Size];   MyTimer mt;   cout << "排序规模为:" << C_Size << endl;   for(i=0;i<C_Size;i++)   {       element = rand()%1000;       num.push_back(element);       array[i] = rand()%1000;   }     mt.Start();   sort(num.begin(),num.end());   mt.End();   cout << "sort() cost time:" << mt.costTime << " us" << endl;}

原文链接: https://www.cnblogs.com/bl4nk/archive/2011/04/20/2022992.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/24302

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月8日 上午2:08
下一篇 2023年2月8日 上午2:09

相关推荐