Je veux avoir une classe qui a en tant que membre d'un pointeur vers une fonctionC++ pointeur membre de la classe à la fonction globale
est ici le pointeur de fonction:
typedef double (*Function)(double);
est une fonction ici qui correspond à la définition de pointeur de fonction:
double f1(double x)
{
return 0;
}
ici est la définion de classe:
class IntegrFunction
{
public:
Function* function;
};
et quelque part dans la fonction principale que je veux faire quelque chose comme ceci:
IntegrFunction func1;
func1.function = f1;
Mais, ce code ne fonctionne pas.
Est-il possible d'affecter à un membre de classe un pointeur de fonction à une fonction globale, déclarée comme ci-dessus? Ou dois-je changer quelque chose dans la définition du pointeur de fonction?
Merci,
En quoi cela ne fonctionne-t-il pas? –
Comment ça "ne marche pas"? Avez-vous une erreur de compilation? Si oui, qu'est-ce que c'est? –
La réponse pourrait être plus facile pour nous de trouver si vous fournissez un exemple complet. Vous êtes * si * proche, il ne faudrait que quelques lignes de plus pour le compléter. Aussi, pouvez-vous nous dire ce que vous entendez par "ne fonctionne pas?" Avez-vous une erreur du compilateur? Linker? Avez-vous un comportement d'exécution différent de ce que vous attendez? –