pourquoi ceci est vrai: et ceci est faux: p> dans mon esprit devrait être l'oposite .. p> p>
3 Réponses :
Ils se lient comme suit:
(true | false) && false // false
Bon sang, tous les deux étaient plus rapides. Oui, c'est 7.2.1.
Aussi: ma règle de mail: n'apprends jamais la table de prime b>; Utilisez des crochets à la place. Sauvez votre cerveau pour des trucs qui compte.
C'est 7.3.1 dans la spécification C # 4 :)
Oui, il est conseillé d'utiliser des crochets pour que votre code soit plus facile à lire.
D'Oh! J'ai vérifié 1.1 et 3.0 - soupir
voir la référence des opérateurs C # contenant une préséance pour plus d'informations. P> P> & code> a la priorité to
| code> qui a la priorité à
&& code>, de sorte que vos expressions sont évaluées comme
| code> et
& code> sont également définis pour les bools également) - Utilisez
|| code> et
&& code > Pour les opérations logiques, y compris la curculition courte.
C'est la raison pour laquelle j'aime toujours explicitement des bretelles dans de telles situations ;-)
@Delnan: Terminologie Nitpick:
| code> et
& code> sont définis pour les types intégraux et pour BOOL. Pour des types intégrés, ils sont des opérateurs bitwises; Pour Bool, ce sont des opérateurs logiques sans court-circuit.
@Martinho: Eh bien, en supposant que la définition
true = 1 code> et
false = 0 code>, tant fonctionne;) mais pointe prise.