Rumah >pembangunan bahagian belakang >C++ >Bolehkah Fungsi Ahli Kelas C Digunakan sebagai Fungsi Panggilan Balik C?
Menggunakan Fungsi Ahli Kelas C sebagai Fungsi Panggilan Balik C
Adalah mungkin untuk mendaftarkan fungsi ahli kelas C sebagai fungsi panggil balik C , tetapi terdapat keperluan tertentu untuk dipenuhi.
S1: Pertama sekali adakah mungkin untuk mendaftarkan fungsi ahli kelas C seperti Saya cuba lakukan dan jika ya bagaimana?
J1: Ya, adalah mungkin untuk mendaftarkan fungsi ahli kelas C sebagai fungsi panggil balik jika fungsi itu diisytiharkan sebagai fungsi statik. Fungsi ahli statik tidak mempunyai penunjuk 'ini' tersirat sebagai hujah pertama mereka, tidak seperti fungsi ahli bukan statik. Ini membolehkan mereka serasi dengan tandatangan fungsi panggil balik C.
S2: Adakah terdapat cara alternatif/lebih baik untuk menangani perkara ini?
A2: Berikut adalah beberapa pilihan alternatif:
Contoh Menggunakan Fungsi Ahli Statik:
class A { public: A() { register_with_library(&A::e); } ~A() {} static int e(int *k, int *j) { return 0; } };
Atas ialah kandungan terperinci Bolehkah Fungsi Ahli Kelas C Digunakan sebagai Fungsi Panggilan Balik C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!