> 백엔드 개발 > C++ > C# 열거형에서 비트별 연산을 효율적으로 사용하려면 어떻게 해야 합니까?

C# 열거형에서 비트별 연산을 효율적으로 사용하려면 어떻게 해야 합니까?

Patricia Arquette
풀어 주다: 2025-01-13 11:11:42
원래의
942명이 탐색했습니다.

How Can I Efficiently Use Bitwise Operations on C# Enums?

C# 열거형의 일반적인 비트 연산

비트별 연산을 통해 열거형의 개별 비트를 효율적으로 조작할 수 있으며 이는 플래그 값 관리에 매우 효과적입니다. 다음은 C# 구문을 사용하여 [Flags] 특성으로 표시된 열거형에 대해 일반적인 작업을 수행하는 예입니다.

비트 설정

FlagsEnum flags = FlagsEnum.None;
flags |= FlagsEnum.Bit4; // 设置位4
로그인 후 복사

비트 지우기

flags &= ~FlagsEnum.Bit4; // 清除位4
로그인 후 복사

위치 전환

flags ^= FlagsEnum.Bit4; // 切换位4 (已设置则清除,已清除则设置)
로그인 후 복사

시험 위치

if ((flags & FlagsEnum.Bit4) != 0) // 测试位4是否已设置
로그인 후 복사

확장 방법 사용

비트 작업을 단순화하기 위해 사용자 정의 확장 방법을 사용할 수 있습니다.

namespace EnumExtensions {
    public static class EnumerationExtensions {
        public static bool Has<T>(this Enum type, T value) => ((int)type & (int)value) == (int)value;
        // ... 其他扩展方法
    }
}
로그인 후 복사

확장 방법 사용

위 내용은 C# 열거형에서 비트별 연산을 효율적으로 사용하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿