검색결과 리스트
프로그래밍/C# 프로그래밍에 해당되는 글 1건
- 2013.08.09 C# Flag 연산 정리 1
글
[Flags]
public enum PriceType
{
None = 0,
Gold = 1 << 0,
Cash = 1 << 1,
Heart = 1 << 2,
Free = 1 << 3,
All = int.MaxValue // int의 Max값을 넣으면 모든 비트가 1이므로 무조건 All이 된다
}
// [Flags] Attribute를 위에 붙여주면 비트연산처럼 사용가능
PriceType e_PriceType = PriceType.Gold | PriceType.Cash;
// Flag 값 확인
if((e_PriceType & PriceType.Gold) != 0)
{
// Gold Flag값이 들어있으면
}
// Gold Flag 설정
e_PriceType |= PriceType.Gold;
// Gold Flag 제거
e_PriceType &= ~PriceType.Gold;
// Gold Flag 반전 (있으면 제거하고 없으면 설정)
e_PriceType ^= PriceType.Gold;
// Flag 모두 제거
e_PriceType = PriceType.None;
// Flag 모두 설정
e_PriceType = PriceType.All;
// Gold와 Free를 제외하고 모두 설정
e_PriceType = PriceType.All ^ PriceType.Gold ^ PriceType.Free;
RECENT COMMENT