728x90
예시
[Flags]
public enum Options
{
None = 0,
Option1 = 1,
Option2 = 2,
Option3 = 4,
Option4 = 8
}
그 [Flags] 속성은 열거형이 단일 값이 아닌 가능한 값의 집합을 나타낼 때마다 사용해야 합니다.
이러한 컬렉션은 비트 연산자와 함께 사용되는 경우가 많습니다.
예를 들어 다음과 같습니다.
var allowedColors = MyColor.Red | MyColor.Green | MyColor.Blue;
참고 [Flags] 속성은 스스로 이것을 가능하게 하지 않는다 - 단지 그것에 의해 멋진 표현을 허용하는 것이다. .ToString() 메서드
enum Suits
{
Spades = 1,
Clubs = 2,
Diamonds = 4,
Hearts = 8
}
[Flags]
enum SuitsFlags
{
Spades = 1,
Clubs = 2,
Diamonds = 4,
Hearts = 8
}
...
var str1 = (Suits.Spades | Suits.Diamonds).ToString();
// "5"
var str2 = (SuitsFlags.Spades | SuitsFlags.Diamonds).ToString();
// "Spades, Diamonds"
'개발언어 > C#' 카테고리의 다른 글
[c#] [C++] --> [C#] 구조체, 클래스 컨버팅 (0) | 2020.11.04 |
---|---|
[c#] [StructLayout()]객체의 메모리 레이아웃에 대하여 (0) | 2020.11.04 |
[C#] C# 코딩 표준 (0) | 2020.11.04 |
[C#] 고정크기배열 사용방법 #MarshalAs (0) | 2020.11.03 |
[C#] x86/x64 환경에 따라 달라지는 P/Invoke 함수의 export 이름 (0) | 2020.11.03 |