public enum class Color {Black, White, Red}; public enum class TransactionType : unsigned char {Deposit, Withdrawal, Transfer}; int main() { Color c = Color::White;
/*1*/ Console::WriteLine("Color::Red's name is >{0}<", Enum::GetName(c.GetType(), Color::Red)); Console::Write("Color's members are:");
/*2*/ array<String^>^ names = Enum::GetNames(Type::GetType("Color")); for each (String^ s in names) { Console::Write(" {0}", s); } Console::WriteLine();
/*3*/ Console::WriteLine("The type underlying Color is >{0}<", Enum::GetUnderlyingType(Color::typeid));
/*4*/ Console::WriteLine("The type underlying TransactionType is >{0}<", Enum::GetUnderlyingType(TransactionType::typeid)); } 插2:例7的輸出
Color::Red's name is >Red< Color's members are: Black White Red The type underlying Color is >System.Int32< The type underlying TransactionType is >System.Byte< 在標(biāo)號(hào)1中,調(diào)用了Enum::GetName以找出特定enum類(lèi)型枚舉器的名稱(chēng),第一個(gè)參數(shù)必須為System::Type類(lèi)型,而獲取它的一個(gè)方法就是通過(guò)對(duì)感愛(ài)好的變量調(diào)用Object::GetType。