时间测试
#include <iostream>
#include <memory>
#include <string>
#include <ctime>
// 计时器类
class TimeInterval
{
public:
TimeInterval(const std::string& d)
: detail(d)
{
init();
}
TimeInterval()
{
init();
}
~TimeInterval()
{
end = clock();
std::cout << detail << (double)(end - start) << " ms" << std::endl;
}
protected:
void init()
{
start = clock();
}
private:
std::string detail;
clock_t start;
clock_t end;
};
#define TIME_INTERVAL_SCOPE(d) std::shared_ptr<TimeInterval> time_interval_scope_begin = std::make_shared<TimeInterval>(d)
使用方法是在作用域中使用宏TIME_INTERVAL_SCOPE(d),d为打印用的字符串,输出作用域的耗时情况。
网友评论