C++计算程序运行的时间
最近在程序中有个读取文件的操作,想知道耗费的时间,查找之后大家都在用C++11中的库chrono,找了个能运行的现成写好的类:链接
代码如下:
#include <iostream> #include <chrono> using namespace std; using namespace std::chrono; class HightPrecisionTimeStamp { public: // 刷新当前时间点 void Update() { m_begin = high_resolution_clock::now(); } // 获取当前时间秒 double GetElapsedTimeInSecond() { return GetElapsedTimeInMicroSec() * 0.000001; } // 获取时间毫秒 double GetElapsedTimeInMilliSec() { return GetElapsedTimeInMicroSec() * 0.001; } // 获取时间微秒 long long GetElapsedTimeInMicroSec() { return duration_cast<microseconds>(high_resolution_clock::now() - m_begin).count(); } protected: time_point<high_resolution_clock> m_begin; //时间开始 }; int main() { HightPrecisionTimeStamp stopWatch; stopWatch.Update(); //---------------------- //这之间写测试代码 //---------------------- cout << stopWatch.GetElapsedTimeInMilliSec(); std::cin.get(); return 0; }