Bonjour !
Voila mon probleme:
J'ai une classe abstraite "Technique" qui possede un pointeur vers une fonction:
Code :
- class Technique {
- protected:
- (Technique::*function)(int) _function;
- }
|
Et une classe fille, qui doit appeler cette fonction:
Code :
- class MaTechnique : public Technique {
- //(...)
- int MaTechnique::maFonction (int i)
- {
- // des machins
- }
- int MaTechnique::setFunction () {
- this->_function = maFonction (10);
- }
|
Le probleme a la compilation est que j'ai une incompatibilité de type à l'appel de "maFonction"...:
cannot convert from 'void (__cdecl *)(int)' to 'void (__thiscall Technique::* )(int)' |
J'ai essayé avec un dynamic_cast, mais sans succes (mais ma syntaxe etait peut etre pas la bonne...)
Et le probleme est que je ne peux pas utiliser de fonction static, car la fonction "maFonction" doit modifier des variables membres de MaTechnique...
Je ne sais pas si c'est clair ...
Une idée ?