Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Mencipta dan Menggunakan Perpustakaan Kelas C Dikongsi Dinamik di Linux?
Pustaka Kelas C Dikongsi Dinamik di Linux
Pengenalan
Mencipta dan menggunakan perpustakaan kelas kongsi dalam C on Linux boleh menjadi tugas yang mencabar. Artikel ini menyediakan panduan komprehensif yang merangkumi proses mencipta dan menggunakan perpustakaan kelas C kongsi, termasuk penciptaan objek, pengubahsuaian dan pemusnahan.
Mencipta Pustaka Kelas C Kongsi
Kepada buat pustaka kelas C kongsi, ikut langkah berikut:
Menggunakan Pustaka Kelas C Kongsi
Untuk menggunakan pustaka kelas C kongsi yang telah dibuat, ikuti ini langkah:
Contoh Pelaksanaan
Coretan kod berikut menunjukkan perpustakaan C kongsi mudah (myclass.h, myclass.cc) dan program C (class_user.cc) yang menggunakan perpustakaan:
myclass.h:
class MyClass { public: MyClass(); virtual void DoSomething(); private: int x; };
myclass.cc:
extern "C" MyClass* create_object() { return new MyClass; } extern "C" void destroy_object(MyClass* object) { delete object; } MyClass::MyClass() { x = 20; } void MyClass::DoSomething() { cout << x << endl; }
class_user .cc:
MyClass* (*create)(); void (*destroy)(MyClass*); create = (MyClass* (*)())dlsym(handle, "create_object"); destroy = (void (*)(MyClass*))dlsym(handle, "destroy_object"); MyClass* myClass = (MyClass*)create(); myClass->DoSomething(); destroy(myClass);
Kompilasi (Linux):
g++ -fPIC -shared myclass.cc -o myclass.so g++ class_user.cc -ldl -o class_user
Dengan mengikuti langkah ini, anda boleh berjaya mencipta dan menggunakan perpustakaan kelas C kongsi dinamik di Linux.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencipta dan Menggunakan Perpustakaan Kelas C Dikongsi Dinamik di Linux?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!