enum(열거형)에서는 Flag(FlagsAttribute)속성이 있는데,
이를 이용하면 하나의 속성을 선택하는 것이 아니라 여러 속성을 선택하는 것이 가능합니다.
다음의 코드는 열거형의 Flag연산을 쉽게 정리해 놓은 것입니다.
[Flags]
public enum ColorType
{
None = 0,
Red = 1,
Blue = 2,
Green = 3,
Yellow = 4,
Black = 5,
All = Int32.MaxValue
}
public enum ColorType
{
None = 0,
Red = 1,
Blue = 2,
Green = 3,
Yellow = 4,
Black = 5,
All = Int32.MaxValue
}
[Flags] 속성을 사용하면 아래와 같이 두 속성을 하나의 변수에 담는게 가능합니다.
ColorType MyColors = ColorType.Red | ColorType.Blue;
값이 존재하는지 확인
if((MyColors & ColorType.Red) != 0)
특정 값을 추가
MyColors |= ColorType.Black;
특정 값을 제거
MyColors &= ~ColorType.Red;
모든 값 삭제
MyColors = ColorType.None;
모든 값 설정
MyColors = ColorType.All;
특정 값을 제외하고 모두 설정
MyColors = ColorType.Blue ^ ColorType.Red ^ ColorType.Green;
'Development > C#' 카테고리의 다른 글
WPF UI 업데이트 반영 (0) | 2014.07.14 |
---|---|
XAML 요소의 네임스페이스와 CLR 타입 매핑 (0) | 2014.05.09 |
C# 데이터형식 (0) | 2013.04.15 |
구성파일(Configuration File) (0) | 2013.04.11 |
Enum 변환 (0) | 2013.02.13 |