Tôi biết tôi có thể nhân nhưng là lập trình lười biếng mà tôi không muốn.Bất kỳ thủ thuật nào để xác định một enum là cờ/quyền hạn của 2 mà không cần một máy tính?
Có ai nghĩ ra một số phép thuật để tự động đánh số enums thành lũy thừa của hai không?
Dưới đây là ví dụ tôi có chỉ để làm cho nó cụ thể:
[Flags]
private enum Targets : uint
{
None = 0,
Campaigns = 1,
CampaignGroups = 2,
Advertisers = 4,
AdvertiserGroups = 8,
AffiliateGroups = 16,
Affiliates = 32,
Creatives = 64,
DetailedLeads = 128,
DetailedSales = 256,
ProgramLeads = 512,
CreativeDeployments = 1024,
CampaignCategories = 2048,
Payouts = 4096,
All = uint.MaxValue
}
Multiply giá trị trước bằng 2? –
điều dễ nhất là ghi nhớ chúng lên đến 2^64? – JeremyWeir
Đó là những tính toán dành cho. Bạn nên sử dụng giá trị hex chỉ để ở lại thực hành với nhân cơ sở 16. :) – IAbstract