Je developpe un projet qui utilise la bibliothéque GLut (GL pour opengl).
Dans cette bibliothéque une fonction a comme paramètre d'entré le nom d'une fonction, pus precisement la declaration de la fonction dans glut.h est de la sorte :
GLUTAPI void APIENTRY glutDisplayFunc(void (GLUTCALLBACK *func)(void));
Donc un pointeur sur une fonction.
Dans un premier temps je n'ai pas eu de probleme, la fonction s'appellais affichage je mettait donc
glutDisplayFunc(affichage);
et ca marchais parfaitement!
Par contre il y a d'autre fonction du même genre que affichage() il y a mouse() ...ect qui utilisent des variables en commun entre eux.
Comme j'ai dis, en premier temps j'ai tout mis en vrac avec des variables globaleset ca marchait parfaitement.
Maintenant pour rendre le projet plus lisible j'ai mis toute ces fonctions qui utilisaient des variables en commun entre eux dans une classe avec la variable en private, je pense que c'est la bonne solution, mais la j'ai un probleme.
glutDisplayFonction(affichage);
ne fonctionne pas, affichage etant une fonction de la classe c'est normal.
glutDisplayFonction(Aff::affichage); //Aff est ma classe
ne fonctionne pas à mon grand etonnement et me donne comme message d'erreur :
error C3867: 'Aff::affichage': function call missing argument list; use '&Aff::affichage' to create a pointer to member
glutDisplayFonction(A.affichage); //A etant mon objet crée dans le main
ne fonctionne pas non pluset me donne le même message d'erreur.
Je ne vois pas quoi faire à l'aiiiiiiiide!!!
Et merci d'avance![]()
Partager