J'ai une interface et une classe implémentant cette interface: maintenant, est-ce que c # code> autorise la valeur code> à avoir une valeur par défaut
6 Réponses :
S'il n'y a rien derrière elle, il est par défaut de fausse, selon la documentation.
Toutefois, si vous voulez qu'il soit instancié avec une valeur initiale autre que em> faux Code>, vous pouvez faire cela de cette façon: p>
Je voulais dire, comme, par exemple pour la définir sur vrai code>.
@Yippie no, c # ne vous permet pas de le faire. Si vous voulez avoir une valeur initiale sans champ de support, vous devez la définir dans le constructeur.
Par défaut valeur code> serait
false code> mais il peut être initialisé dans le constructeur. P>
à partir de C # 6 (VS2015) Cette syntaxe est parfaitement valide p> comme définit une valeur pour une propriété réadonnée P> public bool Value { get; set; } = true;
Quand j'ai vu pour la première fois cet échantillon de code, je pensais "aucune façon! Tu peux faire ça ?!"
Pensez effectivement que cette réponse doit être mise à jour car à compter du C # 6, ceci est valide !! (Hourra!)
@ Moo-Juice merci Oh Milky One! J'ai mis à jour la réponse :)
@BinyWorrier, je pense que vous méritez un badge pour obtenir la syntaxe à droite une demi-décennie à l'avance :)
Vous ne pouvez pas définir valeur code> à une autre valeur par défaut que la valeur par défaut du type de données lui-même sur la propriété. Vous devez attribuer la valeur par défaut dans le constructeur de
quel que soit code>. P>
La valeur par défaut en ce moment est maintenant false code>. Pour ce faire
true code>, définissez-le dans le constructeur.
Vous pouvez définir une valeur par défaut dans le constructeur.
//constructor public Whatever() { Value = true; } public bool Value { get; set; }
Voulez-vous dire pouvez-vous spécifier le par défaut. Dans cet exemple, la valeur de valeur par défaut à true?