Fonction appelant un pointeur vers une fonction
Bonsoir à tous,
Voici mon problème :
J'ai une classe A dont une fonction utilise la classe B, en instanciant un objet b qui utilise la fonction truc.
Cette fonction truc utilise un pointeur vers une fonction définie dans la classe B.
A la compilation, j'obtiens une erreur du style :
void to void (__cdecl*)
Est-ce un problème d'appel de fonction membre ?
J'avoue que je sèche de manière sérieuse.
Voici pour expliquer le code que j'écris :
Code:
1 2 3 4 5 6
|
CAffichage::fonction()
{
CPolynome polynome, poly2;
polynome.mrqmin(date, value, sig , date.size(), factors, ia, 2, covar, alpha, chisq, poly2.Exponentielle, alambda);
} |
et dans la classe CPolynome :
Code:
1 2 3 4
|
void mrqmin(std::vector<float>x, std::vector<float>y, std::vector<float> sig, int ndata, std::vector<float> a, std::vector<int>ia,int ma, float **covar, float **alpha, float *chisq,void (*funcs)(float, float [], float *, float [], int), float *alamda);
void Exponentielle(float x, float a[], float *y, float dyda[], int na); |
J'ai essayé, vainement, d'utiliser des pointeurs du style :
Code:
void (*func)(); func=poly2.Exponentielle;
puis d'appeler cette fonction dans ma fonction mrqmin...
Merci d'avance pour votre aide qui, je le sais, sera précieuse.