คำถามติดแท็ก enum-flags

15
จะวนซ้ำค่าของ Enum ที่มีแฟล็กได้อย่างไร?
ถ้าฉันมีตัวแปรที่ถือแฟล็ก enum ฉันจะวนซ้ำค่าบิตในตัวแปรนั้นได้หรือไม่ หรือฉันต้องใช้ Enum.GetValues ​​เพื่อวนซ้ำรอบ enum ทั้งหมดและตรวจสอบว่ามีการตั้งค่าใด
131 c#  enums  enum-flags 

6
เหตุใดจึงมักกำหนดแฟล็ก enums ด้วยค่าฐานสิบหก
หลายครั้งฉันเห็นการประกาศ flag enum ที่ใช้ค่าฐานสิบหก ตัวอย่างเช่น: [Flags] public enum MyEnum { None = 0x0, Flag1 = 0x1, Flag2 = 0x2, Flag3 = 0x4, Flag4 = 0x8, Flag5 = 0x10 } เมื่อฉันประกาศ enum ฉันมักจะประกาศเช่นนี้: [Flags] public enum MyEnum { None = 0, Flag1 = 1, Flag2 = 2, Flag3 = 4, Flag4 …
122 c#  .net  enums  enum-flags 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.