我正在尝试用c ++制作一个计时器。我是c ++的新手。我找到了这段代码
UINT_PTR SetTimer(HWND hWnd,UINT_PTR nIDEvent,UINT uElapse,TIMERPROC lpTimerFunc);
我把它放在我的全局变量中它告诉我
错误1错误C2373:'SetTimer':重新定义;不同类型的修饰符
我不确定这意味着什么。有没有更合适的方法来定义计时器?
我没有使用mfc / afx
由于
答案 0 :(得分:3)
您应该这样称呼它:
void CALLBACK TimerProc(
HWND hwnd,
UINT uMsg,
UINT idEvent,
DWORD dwTime
)
{
//do something
}
SetTimer(NULL, NULL, 1000, TimerProc);
这会将定时器设置为1秒,并在过期时调用TimerProc。在此处阅读TimerProc MSDN:http://msdn.microsoft.com/en-us/library/ms644907%28VS.85%29.aspx
答案 1 :(得分:1)
这不是一个函数调用 - 这是一个函数声明,你可能已经在某个地方#including了。您需要的是来自代码的实际SetTimer调用。
您可以将代码发布到您尝试设置计时器的位置,以及触发时希望它调用的功能吗?