私はMsgProc
のようなものをWin32で作成しようとしています。彼らがMsgProc
関数を宣言するとき、その前にCALLBACK
型があります。だから私がしようとしているのは、メッセージを処理する関数を呼び出す独自のmesssage関数を作成することです。メッセージが送信されて処理されるときは、基本的に同じことです。私の質問は、私はどのように同じプロセスを作成できますか?例が素晴らしいだろう。C++ CALLBACK関数タイプ
3
A
答えて
1
新しいC++ 0x lambdasが興味を持っている古典的な関数ポインタと関数オブジェクト以外のものです。
ここでは、ラムダをタイマー関数に渡す例を示します。
#include <windows.h>
#include <iostream>
#include <functional>
void onInterval(DWORD interval, std::function<void()> callback) {
for (;;) {
Sleep(interval);
callback();
}
}
int main() {
onInterval(1000, []() {std::cout<<"Tick! ";});
}
0
あなたがC++にしている場合は、ちょうどあなたのクラスで関数ポインタを使用します。
0
あなたはブーストを使用することができる場合、私は間違いなくBoost.Signalsに打撃を与えるだろう、彼らはあなたが探している機能を提供します(Boost.Signals2でもスレッドセーフな方法で)
関連する問題
- 1. C++関数タイプ?
- 2. Facebook deauthorize callback C#
- 3. C++関数の戻りタイプ
- 4. C#からのcallback char *
- 5. 既知のタイプのC++バリアント関数テンプレート
- 6. AppFabric CallBack
- 7. Nodejs、soap、callbackは関数ではありません
- 8. 約束の中のreturn callback()とcallback()
- 9. asychromous callback
- 10. TypeScript関数のタイプ交差
- 11. "callback"引数はNode.js関数でなければなりません
- 12. TypeError: "callback"引数は関数でなければなりません
- 13. Windows API関数宣言の "CALLBACK"は何を意味しますか?
- 14. Javascript settimeout + callback
- 15. javascript window.open from callback
- 16. callback onAnimationStop Vue-Chartjs
- 17. jQuery Create Callback
- 18. jQuery image load callback
- 19. CALLBACKマクロ(QT)
- 20. C#からタイプを返すOracle関数を呼び出す
- 21. C++:正しいタイプのコールバック関数を作成する
- 22. C++ <未解決のオーバーロードされた関数タイプ>
- 23. 関数のCの構造エラーの競合するタイプ
- 24. whatsApp "プレゼンス"と "タイプ" Javascript関数
- 25. ハスケルマップ関数のタイプ詳細
- 26. "ブロック"タイプのテンプレート関数
- 27. Typescript - 高次関数のタイプ
- 28. F#タイプと関数のシグネチャ
- 29. Django Callback on Facebookクレジット
- 30. jQuery submit callback not working
CALLBACKは、__stdcallとして定義されたマクロです。これは、コールバックの呼び出し規約をwin32 APIの呼び出し規約に設定します。独自のコードでコールバックを実装するには、Windows APIを扱わない限りこのマクロは必要ありません。 –