⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 calculagraph.h

📁 用C++写的数独游戏。提供了各种功能
💻 H
字号:
#pragma once

class CCalculagraph
{
public:
    CCalculagraph(void)
    {
    }
    ~CCalculagraph(void)
    {
    }

protected:
    // CPU计数
    LARGE_INTEGER   m_liCPUCount;
    // 时钟频率
    double          m_dClockRate;
    // 经过的时间
    double          m_dElapsedTime;

public:
    // 开始计时
    inline void Start()
    {
		// 获得时钟频率 
		QueryPerformanceFrequency( &m_liCPUCount ); 
		m_dClockRate = (double)m_liCPUCount.QuadPart;
        // 获得CPU计数
		QueryPerformanceCounter( &m_liCPUCount );
        // 经过的时间清零
        m_dElapsedTime = 0.0;
    }
    // 暂停
    inline void Pause(bool pause = true)
    {
        static LONGLONG QPart1, QPart2;
        if(pause)
        {
            // 获得初始计数值 
		    QPart1 = m_liCPUCount.QuadPart;
		    // 获得终止计数值 
		    QueryPerformanceCounter( &m_liCPUCount );
		    QPart2 = m_liCPUCount.QuadPart;
		    // 平均时钟频率 
		    QueryPerformanceFrequency( &m_liCPUCount ); 
		    m_dClockRate = (m_dClockRate + m_liCPUCount.QuadPart) / 2.0;
            // 计算时间
		    m_dElapsedTime += (QPart2 - QPart1) / m_dClockRate;
        }
        else
        {
		    // 获得时钟频率 
		    QueryPerformanceFrequency( &m_liCPUCount ); 
		    m_dClockRate = (double)m_liCPUCount.QuadPart;
            // 获得CPU计数
		    QueryPerformanceCounter( &m_liCPUCount );
        }
    }
    // 取得描述
    inline CString Describe()
    {
        static CString s;
        static long day, hour, min, sec;
        sec = (long)m_dElapsedTime;
        min = sec / 60;
        hour = min / 60;
        day = hour / 24;
        /*s.Format("[%02ld-%02ld:%02ld'%02ld.%06.0lf\"]",
            day, hour % 24, min % 60, sec % 60,
            (m_dElapsedTime - sec) * 1000000.0);*/
        s.Format("[%ld.%06.0lf\"]",
            sec % 60, (m_dElapsedTime - sec) * 1000000.0);
        return s;
    }
};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -