c#では、可能性のある一連の可能性セットを定義する際に
属性が重要な役割を果たします。これらの列挙は通常、複数のオプションを同時に組み合わせて操作するために、位置の位置とともに使用されます。
ビット操作:ビットまたはオペレーター(| |)の使用を組み合わせて、複数のオプションを含めることができます。 列挙された
<查>検査ロゴの組み合わせを確認してください
を使用します
.NET 4の前に、位置と運用シンボル(&)を使用して、ロゴの存在を確認できます。
<底>基礎となるメカニズム:位置は 列挙の値は、バイナリの形で表されます。 2のパワーを使用する場合、ポジショニングチャームは各ビットを操作します:
ロゴを備えた[Flags]
[Flags]
メソッドのメソッドには、ユーザーにフレンドリーな表現を提供するコンマ分離アクティビティロゴリストを生成します。
エラー宣言:ToString()
属性は、列挙値を自動的に設定しません。ビット操作の互換性を確保するには、2のパワーを値に手動で分配する必要があります。 [Flags]
public enum Options
{
None = 0,
Option1 = 1,
Option2 = 2,
Option3 = 4,
Option4 = 8
}
[Flags]
<位>ビットオペレーターを使用[Flags]
public enum MyColors
{
Yellow, // 0
Green, // 1
Red, // 2
Blue // 3
}
[Flags]
public enum MyColors
{
Yellow = 1,
Green = 2,
Red = 4,
Blue = 8
}
HasFlag
00000110if (myProperties.AllowedColors.HasFlag(MyColor.Yellow))
{
// 允许黄色...
}
if ((myProperties.AllowedColors & MyColor.Yellow) == MyColor.Yellow)
{
// 允许黄色...
}
以上がC#[flags] enum属性は、ビットワイズ操作でどのように機能しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。