이전에는 enum 타입을 정의하고 enum 변수를 정의했다면, 이 enum 변수는 타입 내에서 하나의 값만 가질 수 있었고, 이제는 하나의 변수로 여러 값을 나타내길 원합니다:
오늘 "Pro Net 2.0 Windows Forms And Custom Cortrols In C#"을 읽다가 열거 섹션을 봤는데, 열거 과정에서 여러 값을 병합해야 한다는 걸 알게 되었고, "|"가 사용된 것을 봤습니다. 운영자님, 전에는 별로 신경 쓰지 않았는데, 오늘 왜 "|"를 썼는지 생각해봤어요. 그게 뭐야?
MSDN에서 이런 문장을 봤습니다: "열거 상수는 2의 거듭제곱(즉, 1, 2, 4, 8 등)으로 정의됩니다. 이는 결합된 열거 상수 내 개별 플래그들이 겹치지 않는다는 의미입니다. ”
(열거 상수는 2의 거듭제곱(즉, 1, 2, 4, 8 등)으로 정의되어야 한다. 이는 결합된 열거 상수 내 개별 플래그들이 겹치지 않는다는 의미입니다.)
값에 대해 여러 값을 가질 수 있다면, 열거를 사용하고 플래그를 추가할 수 있습니다
이 글은 플래그(Flags) 작성법을 알려드립니다.
글을 쓰기 전에 기본적인 지식을 알아야 하고, 반대로 배우거나, 모른다면 기본을 살펴보세요.
물론, 이 부분들은 여기서 설명하기에는 너무 복잡합니다.
만약 유형이 존재한다면
여러 값을 병합하기
여러 개를 병합하려면 |
값이 존재하는지 확인하세요
간단한 방법은 HasFlag를 사용하는 것이지만, 한 가지 방법은 &
어떤 가치를 제거하세요
반대 값을 취해
|