checkpoint

自分用のIT技術系ノートです。古い情報や間違っている情報もあるので注意。

FlagsAttributeの使い方

列挙型にFlagsAttributeを付与すると、フラグとして扱うことができます。

[Flags] 
public enum Color 
{ 
 Red = 1, 
 Blue = 2, 
 Yellow = 4, 
 Green = 8, 
} 

値は2の累乗になるようにします。

フラグの立て方。(RedおよびBlue)

Color c = Color.Red | Color.Blue;

特定のフラグが立っていることを確認する場合。(Redが立っているか?)

if ((c & Color.Red) == Color.Red){ .... }