c# - significado - que significa el+= en c++
¿Qué significa el operador "=>" en una propiedad en C#? (6)
Esta pregunta ya tiene una respuesta aquí:
¿Qué significa este código?
public bool property => method();
Como algunos mencionaron, esta es una nueva característica que apareció primero en C # 6, extendieron su uso en C # 7.0 para usarlo con getters y setters, también puedes usar la sintaxis de cuerpo de expresión con métodos como este:
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?
Es la expresión simplificación corpórea.
public string Text =>
$"{TimeStamp}: {Process} - {Config} ({User})";
Referencia; MSDN
Esa es una propiedad con cuerpo de expresión. Se puede usar como una simplificación de getters de propiedades o declaraciones de métodos. Desde C # 7 también se expandió a otros tipos de miembros como constructores, finalizadores, definidores de propiedades e indexadores.
Consulte la documentación de MSDN para obtener más información.
"Las definiciones de cuerpos de expresiones le permiten proporcionar la implementación de un miembro de forma muy concisa y legible. Puede usar una definición de cuerpo de expresión siempre que la lógica para cualquier miembro compatible, como un método o propiedad, consista en una sola expresión".
Esa es una propiedad con cuerpo de expresión. Ver MSDN por ejemplo. Esto es solo una abreviatura de
public bool property
{
get
{
return method();
}
}
Las funciones de cuerpo de expresión también son posibles:
public override string ToString() => string.Format("{0}, {1}", First, Second);
Esta es una propiedad con cuerpo de expresión , una nueva sintaxis para las propiedades calculadas introducidas en C # 6, que le permite crear propiedades calculadas de la misma manera que crearía una expresión lambda. Esta sintaxis es equivalente a
public bool property {
get {
return method();
}
}
La sintaxis similar también funciona para los métodos:
public int TwoTimes(int number) => 2 * number;
=>
usado en propiedad es un expression body
. Básicamente, una forma más corta y limpia de escribir una propiedad con solo getter
.
public bool MyProperty {
get{
return myMethod();
}
}
Se traduce a
public bool MyProperty => myMethod();
Es mucho más simple y legible, pero solo puede usar este operador desde C # 6 y here encontrará documentación específica sobre el cuerpo de la expresión.