记录一种打印函数执行时间比较方便的方法

#include <Windows.h>

class Timer
{
public:
    Timer(const std::string &name)
        : name_(name),
        start_(GetTickCount())
    {
    }
    ~Timer()
    {
        time_t elapsed = GetTickCount() - start_;
        //lint -e1551
        printf("[%s] %lldms", name_.c_str(), elapsed);           //此处可以改为某个日志打印函数
    }
private:
    std::string name_;
    time_t start_;
};

#define TIME_CHECK(X) Timer temp_object(X)
#define TIME_CHECK_FUNCTION() TIME_CHECK(__FUNCTION__)


void test_time()
{
    TIME_CHECK_FUNCTION();                            //加在要被打印函数的最面前
}

效果如下

 

posted @ 2018-10-09 21:40  大老虎打老虎  阅读(811)  评论(0编辑  收藏  举报