- Pagal numatytuosius nustatymus pirmoji išvardijimo reikšmė yra 0, kurią galima aiškiai priskirti išvardijimui.
- Galite apibrėžti pagrindinį išvardijimo tipą, pvz., išvardijimas E : trumpas {}, sizeof(E) == 2; int pagal numatytuosius nustatymus.
- Išvardinta paveldėjimo grandinė: ValueType->Enum->enum
- Konvertavimas tarp išvardijimo tipo ir pagrindinio tipo yra aiškus, išskyrus 0, nes yra numanomas konvertavimas iš 0 į bet kurį išvardijimo tipą.
- Išvardijimo ToString() išveda jo išvardijimo reikšmės identifikatorių,
- Nuo eilutės iki išvardijimo: AEnumType a = (AEnumType) Enum.Parse(typeof(AEnumType), "flag"); gali nepavykti, todėl kodekse turėtų būti numatyti išimčių tvarkymo mechanizmai.
- Galite naudoti Enum.IsDefined(), kad patikrintumėte, ar reikšmė įtraukta į išvardijimą.
jei (! Enum.IsDefined(tipas(SearchMode), parinktys)) mesti naują ArgumentException(Properties.Resources.InvalidEnumerationValue, "options");
SearchMode yra išvardijimo tipas, jei perduodamų parinkčių reikšmė nepatenka į šio išvardijimo apibrėžimo taikymo sritį,Pavyzdžiui, jei išvardijimas apibrėžia 1,2, o parinktys yra iš 3 atmetimų, tada metodas IsDefined grąžina klaidingą.
|