Преобразовать char в enum - PullRequest
0 голосов
/ 05 августа 2020

Скажем, у меня есть этот код

enum Version
{
  V1 = 1,
  V2 = 2,
  V3 = 3
}

//...

void Init(string ver)
{
    Version version = (Version)char.GetNumericValue(ver[0]);
}

Если я знаю, что ver[0] содержит '1', '2' или '3', могу ли я быть уверен, что это правильно назначит version V1, V2 или V3 соответственно?

Я сомневаюсь, потому что GetNumericValue возвращает double, хотя я знаю, что это всегда будет целое число.

Мне нужно сначала привести к int?

Version version = (Version)(int)char.GetNumericValue(ver[0]);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...