Это должен быть просто unbox - хотя вы могли бы хотеть распаковать в enum и затем разыграть. В C # что-то вроде;
int value = (int)(myEnum)Enum.Parse(typeof(myEnum), stringToParse);
Не уверен, как это выглядит в C ++.
В C # следующие также работают, но я не могу гарантировать, как формально:
int value = (int)Enum.Parse(typeof(myEnum), stringToParse);
Обратите внимание, что в приведенном выше тексте я предполагаю, что myEnum
использует Int32
в качестве базового типа. Если это , а не , то вам нужно настроить его, чтобы распаковать как правильный базовый тип first .
Проходя через отражатель, я получаю:
Int32 __gc* value = *static_cast<__box Int32*>(
*static_cast<__box myEnum*>(Enum::Parse(__typeof(myEnum), stringToParse)));