您的位置:首页 > 编程语言 > C语言/C++

c++11 计时器

2015-12-11 11:12 507 查看
#pragma once
#include<chrono>
using namespace std;
using namespace std::chrono;

class Timer
{
public:
Timer() : m_begin(high_resolution_clock::now()) {}
void reset() { m_begin = high_resolution_clock::now(); }

//默认输出毫秒
int64_t elapsed() const
{
return duration_cast<chrono::milliseconds>(high_resolution_clock::now() - m_begin).count();
}

//默认输出秒
double elapsed_second() const
{
return duration_cast<duration<double>>(high_resolution_clock::now() - m_begin).count();
}

//微秒
int64_t elapsed_micro() const
{
return duration_cast<chrono::microseconds>(high_resolution_clock::now() - m_begin).count();
}

//纳秒
int64_t elapsed_nano() const
{
return duration_cast<chrono::nanoseconds>(high_resolution_clock::now() - m_begin).count();
}

////秒
//int64_t elapsed_seconds() const
//{
//	return duration_cast<chrono::seconds>(high_resolution_clock::now() - m_begin).count();
//}

//分
int64_t elapsed_minutes() const
{
return duration_cast<chrono::minutes>(high_resolution_clock::now() - m_begin).count();
}

//时
int64_t elapsed_hours() const
{
return duration_cast<chrono::hours>(high_resolution_clock::now() - m_begin).count();
}

private:
time_point<high_resolution_clock> m_begin;
};

Timer t;
hello();
std::cout << t.elapsed_micro() << std::endl;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++ c++11 定时器