PDA

View Full Version : [C++ - QT] Plugins


trallallero
22-07-2009, 11:58
Per nostre esigenze (intendo della società) sto entrando nel fantastico mondo dei plugins in C++.
Sto usando QT per studiare e capire il concetto ma c'è una cosa che non riesco proprio ad inquadrare.

Ho creato un plugin da un esempio QT (Plug & Paint Example) ma nell'esempio era statico.
L'ho trasformato in dinamico (creato quindi una libreria .so - lavoro su linux).

Al main non serve sapere in fase di compilazione dov'è la libreria ma gli serve quando carica i plugins.
Se trova una libreria nella directory giusta carica il plugin ed abilita delle funzioni.
Se non lo trova queste funzioni sono disabilitate.

Qualcuno sa come funziona tutto ciò a basso livello ? in termini di C++ intendo.
Immagino che ci sia una funzione virtuale che non fa niente nell'interfaccia ma fa qualcosa nell plugin.
Ma il mio dubbio è, come fa ad aggiornare in tempo reale i vtable ? in C++ devi ricompilare tutto se li vuoi aggiornare.