IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Passer une fonction ayant des paramètres en paramètre


Sujet :

C#

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 72
    Points : 53
    Points
    53
    Par défaut Passer une fonction ayant des paramètres en paramètre
    Bonjour à toutes et à tous,

    est-il possible de passer une fonction avec paramètre en paramètre d'une autre fonction?

    Je m'explique:
    j'ai une méthode:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    public int fonctionA(object p1,object p2){
       return 1;
    }
    et une autre méthode:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public string fonctionB(object p1,object p2){
       for(int i=0;i<20;i++){
          int j=fonctionA(p1,p2);
       }
    }
    et je souhaiterais avoir:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public string fonctionB(object p1,object p2,fonctionA){
       for(int i=0;i<20;i++){
          int j=fonctionA(p1,p2);
       }
    }
    Merci d'avance pour vos réponses

  2. #2
    Membre expérimenté Avatar de ctxnop
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2007
    Messages : 858
    Points : 1 732
    Points
    1 732
    Par défaut
    Salut,
    Tu créer un delegate et tu passe un paramètre typé avec ce delegate :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    public delegate int UneFonctionSimple(int p1, int p2);
     
    public int MaFonction1(int p1, int p2) // La signature correspond au delegate ci-dessus
    {
        return p1 + p2;
    }
     
    public int MaFonction2(int p1, int p2, UneFonctionSimple p3) // p3 est de type du délégué
    {
        int sum = 0;
        for(int i = 0; i < 20; i++)
            sum += p3(p1, p2);
        return sum;
    }
     
    public void main()
    {
        int result = MaFonction2(10, 15, MaFonction1);
    }

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 72
    Points : 53
    Points
    53
    Par défaut Ca Marche.... Merci
    Citation Envoyé par ctxnop Voir le message
    Salut,
    Tu créer un delegate et tu passe un paramètre typé avec ce delegate :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    public delegate int UneFonctionSimple(int p1, int p2);
     
    public int MaFonction1(int p1, int p2) // La signature correspond au delegate ci-dessus
    {
        return p1 + p2;
    }
     
    public int MaFonction2(int p1, int p2, UneFonctionSimple p3) // p3 est de type du délégué
    {
        int sum = 0;
        for(int i = 0; i < 20; i++)
            sum += p3(p1, p2);
        return sum;
    }
     
    public void main()
    {
        int result = MaFonction2(10, 15, MaFonction1);
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Tracer une fonction ayant des termes comme exp, ln, log
    Par zhpipo16 dans le forum LabVIEW
    Réponses: 2
    Dernier message: 30/05/2008, 17h01
  2. Réponses: 15
    Dernier message: 02/08/2007, 12h17
  3. Passer une fonction en paramètre ...
    Par Freeze dans le forum C++Builder
    Réponses: 2
    Dernier message: 14/10/2005, 17h51
  4. [Conception] Passer une fonction en paramètre
    Par pejay dans le forum Langage
    Réponses: 9
    Dernier message: 09/12/2004, 14h58
  5. Erreur sur une fonction avec des paramètres
    Par Elois dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 05/05/2004, 22h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo