Maison >développement back-end >C++ >Comment l'attribut C # [FLAGS] ENUM ACTIRE les opérations de bit sur les énumérations?
Comprendre [Flags] dans C # Attributs énumérés
L'attribut
Valeur de putting et d'énumération [Flags]
L'attribut lui-même n'applique pas automatiquement l'opérateur. La valeur des membres d'énumération doit être attribuée de manière appropriée pour prendre en charge l'opération de bit. Si la valeur n'est pas affichée, la valeur passera de 0, ce qui ne fonctionnera pas correctement à la place de l'informatique. L'instruction énumération correcte
[Flags]
Afin d'utiliser efficacement les opérations d'énumération et de bit, la valeur de l'élément d'énumération devrait être la puissance de 2. Par exemple:
Récupérer une seule valeur
Pour récupérer la valeur unique de énuméré, vous pouvez utiliser la méthode
ou exécuter la position et l'opération:<code class="language-csharp">[Flags] public enum MyColors { Yellow = 1, Green = 2, Red = 4, Blue = 8 }</code>
Pour la version précédente du .NET 4, utilisez la position et l'opération:
Le principe de la couche inférieure [Flags]
HasFlag()
<code class="language-csharp">if (myProperties.AllowedColors.HasFlag(MyColor.Yellow)) { ... }</code>
<code class="language-csharp">if ((myProperties.AllowedColors & MyColor.Yellow) == MyColor.Yellow) { ... }</code>
La valeur peut être utilisée comme espace réservée sans signe. Cependant, il ne peut pas être utilisé pour la position et le fonctionnement, car il calcule toujours le résultat de zéro. Vous pouvez utiliser la comparaison logique pour vérifier si un bit est défini:
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!