que veut dire ce code?
public bool property => method();
que veut dire ce code?
public bool property => method();
Il s'agit d'une propriété d'expression , une nouvelle syntaxe pour les propriétés calculées introduite dans C # 6, qui vous permet de créer des propriétés calculées de la même manière que vous créez une expression lambda. Cette syntaxe est équivalente à
public bool property {
get {
return method();
}
}
Une syntaxe similaire fonctionne également pour les méthodes:
public int TwoTimes(int number) => 2 * number;
Comme certains l'ont mentionné, il s'agit d'une nouvelle fonctionnalité introduite pour la première fois dans C # 6. Ils ont étendu son utilisation à C # 7.0 afin de l'utiliser avec les getters et les setters. Vous pouvez également utiliser la syntaxe d'expression avec des méthodes telles que:
static bool TheUgly(int a, int b)
{
if (a > b)
return true;
else
return false;
}
static bool TheNormal(int a, int b)
{
return a > b;
}
static bool TheShort(int a, int b) => a > b; //beautiful, isn't it?
C'est une propriété de corps d'expression. Voir MSDN pour un exemple. Ceci est juste un raccourci pour
public bool property
{
get
{
return method();
}
}
Les fonctions d'expression sont également possibles:
public override string ToString() => string.Format("{0}, {1}", First, Second);
=>
utilisé dans l'immobilier est une expression body
. Fondamentalement, plus courte et la plus propre façon d'écrire une propriété avec seulement getter
.
public bool MyProperty {
get{
return myMethod();
}
}
Est traduite en
public bool MyProperty => myMethod();
Il est beaucoup plus simple et lisible, mais vous ne pouvez utiliser cet opérateur à partir de C# 6 et ici , vous trouverez de la documentation spécifique sur l'expression du corps.
C'est l'expression simplification corsée.
public string Text =>
$"{TimeStamp}: {Process} - {Config} ({User})";
Référence; https://msdn.microsoft.com/en-us/magazine/dn802602.aspx
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.