0

C++でタイマーを作ろうとしています。私はc ++が初めてです。このコードスニペットを見つけました

UINT_PTR SetTimer(HWND hWnd, UINT_PTR nIDEvent, UINT uElapse, TIMERPROC lpTimerFunc);

それをグローバル変数に入れると、それが教えてくれます

エラー 1 エラー C2373: 'SetTimer': 再定義。さまざまな型修飾子

これが何を意味するのかわかりません。タイマーを定義するより適切な方法はありますか?

私はmfc / afxを使用していません

ありがとう

4

2 に答える 2

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

于 2009-09-15T00:17:04.853 に答える
1

これは関数呼び出しではありません。これは関数宣言であり、おそらく既にどこかから #include されています。必要なのは、コードからの実際の SetTimer 呼び出しです。

タイマーを設定しようとしているコードと、タイマーがトリガーされたときに呼び出す関数を投稿できますか?

于 2009-09-14T23:59:35.900 に答える