In C#spielt das
Attribut eine wichtige Rolle bei der Definition einer Reihe möglicher Möglichkeiten von Möglichkeiten. Diese Aufzählungen werden normalerweise zusammen mit der Positionierung der Position verwendet, um mehrere Optionen gleichzeitig zu kombinieren und zu bedienen.
[Flags]
Das Attribut zeigt die Kombination eines Aufzählungswerts an, nicht auf einen einzelnen Wert. Dies erlaubt: <:>
Bitoperationen: kann Bit oder Operator (| |) mit mehreren Optionen kombiniert werden. [Flags]
ToString()
Das Attribut setzt den Aufzählungswert nicht automatisch auf die Leistung von 2. Um die Kompatibilität des Bit -Betriebs sicherzustellen, sollten Sie die Leistung von 2 manuell auf den Wert verteilen.
Fehlererklärung:
[Flags] public enum Options { None = 0, Option1 = 1, Option2 = 2, Option3 = 4, Option4 = 8 }
<确> Richtige Anweisung:
[Flags]
<查> Überprüfen Sie die Kombination des Inspektionslogos
<可> Die Methode kann verwendet werden, um zu überprüfen, ob das Attribut bestimmte Zeichen enthält:
[Flags] public enum MyColors { Yellow, // 0 Green, // 1 Red, // 2 Blue // 3 }
Vor .net 4 können Sie die Position und das operative Symbol (&) verwenden, um die Existenz des Logos zu überprüfen:
[Flags] public enum MyColors { Yellow = 1, Green = 2, Red = 4, Blue = 8 }
<底> Der zugrunde liegende Mechanismus: Position zeigt an
Der Wert der Aufzählung wird in Form von Binärer dargestellt. Bei der Verwendung der Leistung von 2 betreibt der Positionierungsbrand jedes Bit:
HasFlag
if (myProperties.AllowedColors.HasFlag(MyColor.Yellow)) { // 允许黄色... }
if ((myProperties.AllowedColors & MyColor.Yellow) == MyColor.Yellow) { // 允许黄色... }
Das
-Logo normalerweise mit 0Das obige ist der detaillierte Inhalt vonWie funktioniert das C# [Flags] Enum -Attribut mit bitweisen Operationen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!