Operasi bit biasa dalam penghitungan C#
Operasi bitwise membenarkan manipulasi yang cekap bagi bit individu dalam penghitungan, yang sangat berkesan untuk mengurus nilai bendera. Berikut ialah contoh menggunakan sintaks C# untuk melaksanakan operasi biasa pada penghitungan yang ditandakan sebagai atribut [Flags]
:
Set bit
FlagsEnum flags = FlagsEnum.None; flags |= FlagsEnum.Bit4; // 设置位4
Sedikit jelas
flags &= ~FlagsEnum.Bit4; // 清除位4
Togol kedudukan
flags ^= FlagsEnum.Bit4; // 切换位4 (已设置则清除,已清除则设置)
Kedudukan ujian
if ((flags & FlagsEnum.Bit4) != 0) // 测试位4是否已设置
Gunakan kaedah sambungan
Untuk memudahkan operasi bit, anda boleh menggunakan kaedah sambungan tersuai:
namespace EnumExtensions { public static class EnumerationExtensions { public static bool Has<T>(this Enum type, T value) => ((int)type & (int)value) == (int)value; // ... 其他扩展方法 } }
Menggunakan kaedah sambungan
SomeType value = SomeType.Grapes; bool isGrapes = value.Is(SomeType.Grapes); // true bool hasGrapes = value.Has(SomeType.Grapes); // true
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggunakan Operasi Bitwise dengan Cekap pada C# Enums?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!