C クラスのメンバー関数を C コールバック関数として使用する
C クラスのメンバー関数を C コールバック関数として登録することができます
Q1: まず、 C クラスのメンバー関数をやろうとしていますが、その場合はどのようにすればよいですか?
A1: はい、関数が静的として宣言されている場合、C クラスのメンバー関数をコールバック関数として登録することができます。関数。静的メンバー関数には、非静的メンバー関数とは異なり、最初の引数として暗黙的な 'this' ポインターがありません。これにより、C コールバック関数のシグネチャと互換性を持つことができます。
Q2: これに取り組むための代替/より良い方法はありますか?
A2: ここにあります。いくつかの代替オプション:
静的メンバー関数の使用例:
class A { public: A() { register_with_library(&A::e); } ~A() {} static int e(int *k, int *j) { return 0; } };
以上がC クラスのメンバー関数を C コールバック関数として使用できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。