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 :

qu'est ce que l'opérateur => ?


Sujet :

C#

  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2005
    Messages : 700
    Points : 488
    Points
    488
    Par défaut qu'est ce que l'opérateur => ?
    Bonjour à tous.

    Je me remet gentillement au c# apres une longue abscence.
    Difficile de faire une recherche sur le forum en utilisant => comme critère, aussi j'espère que ma question ne retombe pas ici pour la nieme fois

    De mémoire, => sert pour les anonymes quelque chose comme : maform.Invoke( () => { /* some code */});

    Seulement je tombe là dessus :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If(arguments => false).Goto(States.B1)
    Quelqu'un pourrait il m'expliquer ce que cela signifie svp , et comment s'appelle cette syntaxe?

    Merci pour vos éclaircissements.

  2. #2
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 195
    Points
    5 195
    Par défaut
    je crois qu'il s'agit de la notation pour les expressions en linq.

    Exemple :

    https://msdn.microsoft.com/en-us/lib...v=vs.110).aspx

    Perso, je trouve celà assez vilain de faire du goto, mais bon, dans le cas de code que tu proposes, on pourrait croire qu'il s'agit du code d'un automate
    ou d'une machine à état.
    The Monz, Toulouse
    Expertise dans la logistique et le développement pour
    plateforme .Net (Windows, Windows CE, Android)

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par giova_fr Voir le message
    Seulement je tombe là dessus :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If(arguments => false).Goto(States.B1)
    Quelqu'un pourrait il m'expliquer ce que cela signifie svp , et comment s'appelle cette syntaxe?
    C'est la même chose. A priori If ici est une méthode (et non l'instruction if) qui prend en paramètre un Func<T, bool> (i.e. un méthode qui prend en paramètre un T et renvoie un bool). L'argument est passé sous forme d'une expression lambda (une forme de méthode anonyme), qui renvoie false quel que soit le paramètre.

    Je suppose que le code en question est celui d'un machine d'état. Il faudrait en voir plus pour comprendre.

  4. #4
    Invité
    Invité(e)
    Par défaut
    "arguments => false" est un délégué anonyme qui équivaut à

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    delegate(Typedesarguments arguments)
    {
      return false;
    }
    http://fguillot.developpez.com/cours/dotnet/introduction-delegates-csharp
    Dernière modification par DotNetMatt ; 20/09/2015 à 19h21. Motif: Pensez aux balises [CODE] et [/CODE] (bouton #)

  5. #5
    Membre régulier
    Homme Profil pro
    Hobby
    Inscrit en
    Août 2002
    Messages
    125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Hobby

    Informations forums :
    Inscription : Août 2002
    Messages : 125
    Points : 82
    Points
    82
    Par défaut
    Deux liens d'explications du site Microsoft :
    - Lambda Expressions (C# Programming Guide).
    - delegate (C# Reference).

Discussions similaires

  1. Qu'est-ce-que l'opérateur "|=" ?
    Par doobinay dans le forum Débuter
    Réponses: 4
    Dernier message: 20/05/2009, 14h16
  2. Qu'est ce que c'est : Le GateA20 ?
    Par le mage tophinus dans le forum x86 16-bits
    Réponses: 5
    Dernier message: 24/02/2003, 15h09
  3. Qu'est ce que le cache ?
    Par irrou dans le forum Assembleur
    Réponses: 4
    Dernier message: 24/11/2002, 23h28
  4. Qu'est-ce que c'est que Nessus, ça fait quoi exactement ?
    Par PeterT dans le forum Développement
    Réponses: 3
    Dernier message: 24/07/2002, 11h23
  5. Réponses: 3
    Dernier message: 19/07/2002, 15h01

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