zoukankan      html  css  js  c++  java
  • 打印函数时间

     自己随手写的,方便测试绘制代码用。
    class CFunTime
    {
    public:
        CFunTime()
    	{
    		TimeStart=GetTickCount();
    	}
    	~CFunTime()
    	{
            TimeEnd=GetTickCount();
    		TRACE("time:%d\n", TimeEnd-TimeStart);
    	}
    
    private:
    	DWORD TimeStart;
    	DWORD TimeEnd;
    };

    这个函数只精确到55ms,1个tick就是55ms。

    第二种:

    class CFunTime
    {
    public:
        CFunTime()
     {
      QueryPerformanceCounter(&TimeStart);
     }
     ~CFunTime()
     {
           QueryPerformanceCounter(&TimeEnd);
      TRACE("time:%d\n", TimeEnd.QuadPart-TimeStart.QuadPart);
     }
    
    private:
     LARGE_INTEGER TimeStart;
     LARGE_INTEGER TimeEnd;
    };
    
    


    第三种方法:

    #include "Mmsystem.h"
    #pragma comment(lib, "Winmm.lib")
    class CFunTime
    {
    public:
        CFunTime()
    	{
    		TimeStart = timeGetTime();
    	}
    	~CFunTime()
    	{
    		TimeEnd = timeGetTime();
    		TRACE("time:%d\n", TimeEnd-TimeStart);
    	}
    
    private:
    	DWORD TimeStart;
    	DWORD TimeEnd;
    };
    

    timeGetTime()基本等于GetTickCount(),但是精度更高

    第四种方法:

    #pragma warning(disable : 4035)
    
    inline unsigned __int64 GetCycleCount(void)
    {
    	_asm    _emit 0x0F
    	_asm    _emit 0x31
    }
    
    class KTimer
    {
    	unsigned __int64  m_startcycle;
    
    public:
    
    	unsigned __int64  m_overhead;
    
    	KTimer(void)
    	{
    		m_overhead = 0;
    		Start();
    		m_overhead = Stop();
    	}
    
    	void Start(void)
    	{
    		m_startcycle = GetCycleCount();
    	}
    
    	unsigned __int64 Stop(void)
    	{
    		return GetCycleCount()-m_startcycle-m_overhead;
    	}
    };


    windows图形编程第15

  • 相关阅读:
    JAVAWEB进行PC支付宝支付
    SpringBoot 设置请求字符串格式为UTF-8
    SpringBoot 处理跨域请求问题
    Python 包制作
    F5 开发
    CentOS7 部署nfs服务
    Debian 9 部分快捷键失效问题
    Win10提示 该文件没有与之关联的程序来执行操作
    Debian 9 编译Python
    debian 9 安装远程桌面
  • 原文地址:https://www.cnblogs.com/hgy413/p/3693575.html
Copyright © 2011-2022 走看看