Durante la lettura di un progetto, ho trovato qualche strano codice C#:Cos'è questa strana sintassi in C# e come la costruisco?
public class F : IElement
{
public int CurrentHp { get; } = 10;
public bool IsDead => CurrentHp <= 0;
}
Normalmente avrei scritto qualcosa del tipo:
public class F : IElement
{
public const int CurrentHp = 10;
public bool IsDead
{
get { return CurrentHp <= 0; }
}
}
mio Visual Studio 2013 inoltre, non può riconoscere il primo esempio.
Che cos'è questa sintassi e cosa devo fare per rendere questo progetto realizzabile?
Non vorrei usare const per un valore di salute dinamica. – Ave
'=> CurrentHp <=' è certamente uno sfortunato artefatto della sintassi della funzione lambda/espressione-corpo. Scriverò almeno 'IsDead => (CurrentHp <= 0)'. –