时间差异

时间:2017-09-01 04:12:28

标签: c++ date-difference

我有HoursMinutes的地图,用于定义必须发生的事情的时间。它们与系统时间有关(我使用GetLocalTime函数获得系统时间)。 m_StartTimes只是一个简单的std::map<int, int>

我可以添加几个不同的时间,如

m_StartTimes[10] = 0; // 10:00 AM
m_StartTimes[15] = 30; // 3:30 PM
m_StartTimes[22] = 0; // 10:00 PM

然后我使用此循环来查看m_Events内的哪个事件将被触发。

for (size_t i = 0; i < m_Events.size(); i++)
{
    for (auto const & c : m_Events[i].m_StartTimes)
    {
        // Time to start the event.
        if (st.wHour == c.first && st.wMinute == c.second)
        {
            // Start the event code.
        }
        else
        {
            // Display time left of nearest time
        }
    }
}

我所有的麻烦都是在时间不对的时候,它必须检测它将在下一个小时执行的时间。例如:如果我的系统时间是上午11:00,那么它将在下午3:30开始。如果我的系统时间是晚上8点,它将在下一个晚上10点开始。

0 个答案:

没有答案