Bonjour.
J'aimerais savoir si et comment il serait possible de créer un tableau de pointeurs pointant vers des fonctions de mêmes prototypes. Jusque là toutes mes tentatives sont restées vaines (gcc m'envoie paître).
Merci.
Forum Programmation.c++ Tableaux de pointeurs sur fonctions
10
jan.
2005
# C++ ?
Posté par Pascal Terjan (site web personnel) . Évalué à 4.
Sinon, donne ce que tu as essayé, ca sera plus facile à corriger...
[^] # Re: C++ ?
Posté par Guillaume Ceccarelli . Évalué à 1.
Merci !
# Hum
Posté par cho7 (site web personnel) . Évalué à 3.
un pointeur sur fonction donne un truc genre
int (*plop) ();
J'ai jamais eu le besoin de faire un tableau de pointeurs sur fonctions, et je n'ai pas gcc sous la main, donc je ne suis sûr de rien mais je supposerai une syntaxe genre :
(int (*plop)()) * tab;
ou même
int (*plop)() * tab;
p'tain ca fait peur quand même :)
C'est surement pas ca, mais ca m'a fait plaisir d'essayer ^^
[^] # Re: Hum
Posté par cho7 (site web personnel) . Évalué à 3.
int (*plop[])();
tout simplement :)
[^] # Re: Hum
Posté par Guillaume Ceccarelli . Évalué à 1.
Merci encore !
# Exemple :
Posté par jigso . Évalué à 3.
typedef int MonTypeDeFonction(int foo, const char* bar);
MonTypeDeFonction monTableauDeFonction[100];
int fct0(int foo, const char* bar) { ... }
int fct1(int foo, const char* bar) { ... }
int fct2(int foo, const char* bar) { ... }
monTableauDeFonction[0] = fct0;
monTableauDeFonction[1] = fct1;
monTableauDeFonction[2] = fct2;
...
{
...
MonTypeDeFonction fn = monTableauDeFonction[42];
int retour = (fn)(0, "foo");
Le plus marrant, c'est en C++ pour appeler une méthode sur un objet : (obj->*fct)(args);
[^] # Re: Exemple :
Posté par Guillaume Ceccarelli . Évalué à 1.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.