Pointeur vers une fonction dans une classe ...

MoDDiB Messages postés 546 Date d'inscription mardi 26 novembre 2002 Statut Membre Dernière intervention 4 mai 2007 - 25 févr. 2004 à 13:42
MoDDiB Messages postés 546 Date d'inscription mardi 26 novembre 2002 Statut Membre Dernière intervention 4 mai 2007 - 25 févr. 2004 à 22:43
Supposons que j'ai la fonction
void Fonction(int test,int t);
appartenant a la classe Cclass.

Quelle est la syntaxe pour creer un pointeur vers cette fonction?
Normalment c'est :
void (*Fonction)(int,int);
Mais cela ne marche pas vu qu'ici ma fonction appartient a la classe :( merci bcoup ^^

2 réponses

Hylvenir Messages postés 364 Date d'inscription mercredi 11 février 2004 Statut Membre Dernière intervention 5 octobre 2006 2
25 févr. 2004 à 13:59
Peut être que ça répond à ta question ?

#include

class A {
public:
void fonction( int a, int b )
{ std::cout << a << ' ' << b << std::endl; }
void fonction2( int a, int b )
{ std::cout << b << ' ' << a << std::endl; }
};

int main() {
void (A::*fct)(int, int ) = &A::fonction;
A a;
(a.*fct)( 2, 3 );
fct = &A::fonction2;
(a.*fct)( 2, 3 );
}
0
MoDDiB Messages postés 546 Date d'inscription mardi 26 novembre 2002 Statut Membre Dernière intervention 4 mai 2007 1
25 févr. 2004 à 22:43
void (A::*fct)(int, int )
Merci c'est ce que je voulais ^^
0
Rejoignez-nous