[Python] Gestire eventi con callback

Manlio Perillo manlio.perillo a gmail.com
Lun 9 Mar 2015 16:19:38 CET


2015-03-08 21:31 GMT+01:00 Alessandro Re <ale a ale-re.net>:

> 2015-03-08 20:24 GMT+00:00 Manlio Perillo <manlio.perillo a gmail.com>:
> > Intendevo dire cosa usi per chiamare il codice C++.
>
> Ah, forse ho capito: intendi dire se uso qualche modulo python per
> usare C++, tipo ctypes?
> Non uso niente di simile: sto usando una libreria che ha dei binding
> in python, quindi includo il modulo, eredito una classe e costruisco
> su quella.
>
>
L'unica soluzione "semplice" che  mi venga in mente, è quella di costruire
dei proxy alle instanze delle classi C++ che usi,
così come il modulo weakref lo fa per oggetti Python.

Che io sappia in C++ l'unico modo per creare un proxy per una classe CT è
quello di creare una sotto classe e ridefinire i costruttori e il
distruttore.

class PT public CT {
   // nel costruttore accetti una callback
   // nel distruttore chiami la callback
}

Quindi quando il codice originale richiede un CT, tu instanzi e passi un PT.
Temo però che per casi non banali sia un bagno di sangue farlo a mano.
Però se la cosa è fattibile, sicuramente qualcuno l'ha già implementata


Ciao  Manlio
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20150309/ccf41adc/attachment.html>


Maggiori informazioni sulla lista Python