一段关于定时器的程序
// ThunderFind.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include <iostream>
#include <stdio.h>
#include "map.h"
#include <windows.h>
using namespace std;
map m;//m为map类的对象声明为全局的才能使用定时器
void CALLBACK addThunderTenMin(HWND hwnd,UINT uMsg,UINT_PTR idEvent,DWORD dwTime);//回调函数的声明要注意返回值
int _tmain(int argc, _TCHAR* argv[])
{
m.init_Thunder();
m.display();
SetTimer(NULL,1,1000,(TIMERPROC)addThunderTenMin); //一个1秒触发一次的定时器 ,这里的addThunderTenMin实际是给计时器一个函数地址
//m.addThunderTenMin();
MessageBox(0,0,0,0);
return 0;
}
void CALLBACK addThunderTenMin(HWND hwnd,UINT uMsg,UINT_PTR idEvent,DWORD dwTime) {
m.getRandPos();//获得随机坐标存放在posX,posY中。
while(m.is_Thunder(m.posX,m.posY)) {
m.getRandPos();
}//判断该点是不是雷
m.addThunder(m.posX,m.posY);//添加地雷
system( "cls ");
m.display();
}