- Výchozí je první hodnota enumerace 0, což lze explicitně přiřadit enumu.
- Můžete definovat základní typ enuma, například enum E: short {}, sizeof(E) == 2; int ve výchozím nastavení.
- Enumerovaný dědický řetězec: ValueType->Enum->enum
- Převod mezi typem enum a základním typem je explicitní, kromě 0, protože existuje implicitní převod z 0 na libovolný typ enum.
- ToString() enum výstupu označí identifikátor hodnoty enum,
- Od řetězce k výčetu: AEnumType a = (AEnumType) Enum.Parse(typeof(AEnumType), "flag"); může selhat a kód by měl obsahovat mechanismy pro zpracování výjimek.
- Můžete použít Enum.IsDefined() k ověření, zda je hodnota zahrnuta v enumu.
pokud (! Enum.IsDefined(typeof(SearchMode), options)) throw new ArgumentException(Properties.Resources.InvalidEnumerationValue, "options");
SearchMode je enum typ, pokud hodnota passing options nespadá do rozsahu této definice enum,Například pokud enum definuje 1,2 a možnosti jsou ze 3 castů, pak metoda IsDefined vrací false.
|