Pointeur sur fonction

Pointeur sur fonction - C#/.NET managed - Programmation

Marsh Posté le 02-05-2007 à 10:38:18    

Salut les gars,
 
Tout d'abord je sais que la notion de pointeur en C# est a oublier mais j'aimerais savoir s'il existe un moyens comme en C pour passer une fonction en parametre d'une autre fonction.
 
on a par exemple :  
void fct1(String a)
{...}
void fct2()
{...}
void fct3()
{...}
 
et je veut passer en parametre d'une fct4 soit la fct1, fct2 ou fct3.
 
c'est  a dire on fait l'appel suivant fct4(..., fct1) ou fct4(..., fct2) dans un main par exemple.
 
Bon je sais pas si on peut le faire dans le cas ou on a pas les mêmes arités comme c le cas dans mon exemple pour les fct1 et fct2 mais est ce qu'on peut le faire si les fonctions ont mêmes arités comme la fct2 et la fct3.
 
Bon n'hesitez pas a me poser des questions si vous comprenez pas quelque chose.
 
ps : http://fr.wikipedia.org/wiki/Arité je met ca car c pas un mot courrant


---------------
  ____
Reply

Marsh Posté le 02-05-2007 à 10:38:18   

Reply

Marsh Posté le 02-05-2007 à 10:47:31    

y'a les prédicats qui utilisent un peu le mécanisme de "passer une fonction en argument d'une méthode", mais je ne sais pas si c'est ca que tu cherches...


---------------
Hobby eien /人◕ ‿‿ ◕人\
Reply

Marsh Posté le 02-05-2007 à 13:28:09    

Ce que tu cherches s'appelle delegate.

Reply

Marsh Posté le 02-05-2007 à 13:41:40    

ah ouais y'a les delegates aussi bien sur.


---------------
Hobby eien /人◕ ‿‿ ◕人\
Reply

Marsh Posté le 03-05-2007 à 09:14:20    

Ok merci je vais voir ca, pas mal ton avatar Tamahome. Est ce que c toi ?

Reply

Marsh Posté le 03-05-2007 à 13:28:16    

oui bien sur, c'est évident non ?


---------------
Hobby eien /人◕ ‿‿ ◕人\
Reply

Marsh Posté le 03-05-2007 à 20:48:47    

minimoke a écrit :

Ok merci je vais voir ca, pas mal ton avatar Tamahome. Est ce que c toi ?


 http://vieuxbenou.free.fr/hfr/benous/super_benou_miam.gif

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed