Можем ли мы определить неявные преобразования перечислений в c #? - PullRequest
121 голосов
/ 04 ноября 2008

Можно ли определить неявное преобразование перечислений в c #?

что-то, что могло бы достичь этого?

public enum MyEnum
{
    one = 1, two = 2
}

MyEnum number = MyEnum.one;
long i = number;

Если нет, то почему?

Для дальнейшего обсуждения и идей по этому вопросу я рассмотрел то, как я в настоящее время справляюсь с этим: Улучшение перечисления C #

Ответы [ 11 ]

0 голосов
/ 04 ноября 2008

Введение неявных преобразований для перечислимых типов нарушит безопасность типов, поэтому я бы не рекомендовал это делать. Почему вы хотите это сделать? Единственный вариант использования этого, который я видел, - это когда вы хотите поместить значения перечисления в структуру с предопределенным макетом. Но даже в этом случае вы можете использовать тип enum в структуре и просто сообщить маршаллеру, что он должен делать с этим.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...