"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Que fait l'opérateur `=> 'dans les propriétés et méthodes C #?

Que fait l'opérateur `=> 'dans les propriétés et méthodes C #?

Publié le 2025-02-18
Parcourir:432

What Does the `=> `L'opérateur fait dans les propriétés et méthodes C #?

] Dans l'attribut ou la méthode C #, la signification de l'opérateur

En C #, l'opérateur

=> joue un rôle important dans la définition des membres du corps d'expression, qui est une fonction de sucre syntaxique introduite dans C # 6. Ces membres fournissent une syntaxe concise pour les méthodes Getter dans les propriétés.

Expression attribut body ]

Utilisez l'opérateur

=> dans la déclaration de propriété crée un membre du corps d'expression. Cela signifie que le compilateur générera automatiquement une méthode Getter dont la valeur de retour est l'expression à droite de la flèche.

Par exemple, considérez les attributs du corps d'expression suivants:

public int MaxHealth => Memory[Address].IsValid ? Memory[Address].Read(Offs.Life.MaxHp) : 0;

Si

mémoire [adresse] .isvalid
    est vrai, return
  • mémoire [adresse] .read (offs.life.maxhp) ] ]] si
  • mémoire [adresse] .isvalid
  • est faux, return 0
Différence entre l'initialisation du champ

Contrairement aux propriétés du corps d'expression, les déclarations de champ avec les initialiseurs évaluent leurs expressions uniquement à la fois pendant l'instanciation de type. Par exemple:

public int maxHealth = x?
public int MaxHealth = x ? y : z;
Autres membres du corps d'expression

]

Les membres du corps d'expression ne sont pas limités aux attributs. Ils peuvent également être utilisés pour:

indexer

méthode
  • opérateur
  • Constructeur (ajouté dans C # 7.0)
  • terminator (ajouté dans C # 7.0)
  • Cependant, ils ne peuvent pas être utilisés pour les types, événements ou champs imbriqués.
Différence entre les expressions lambda

Bien que les membres du corps d'expression aient des similitudes avec les expressions de lambda, ce sont des concepts différents. L'expression de lambda produit une instance de délégué ou une arborescence d'expression, et le membre du corps d'expression est une directive pour le compilateur pour générer une implémentation de membre spécifique dans les coulisses.

=> L'existence de l'opérateur

est principalement utilisée pour distinguer les membres du corps d'expression des autres fonctions C # 6.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3