С# - все константы Enum?

Все ли константы перечислений Enum? Получают ли они преобразованные в их значение во время компиляции или во время выполнения?

Ответы

Ответ 1

Они постоянны. Да, время компиляции.

Ссылка: http://msdn.microsoft.com/en-us/library/sbbt4032.aspx

Из ввода:

Ключевое слово enum используется для объявления перечисление, отдельный тип, который состоит из набора названных константназываемый списком перечислителей.

В разделе "Надежное программирование":

Как и любая константа, все ссылки на отдельные значения перечисление преобразуется в числовое литералов во время компиляции. Это может создавать потенциальные проблемы с версиями как описывается в Constants (программирование на С# Руководство).

Ответ 2

Значения Enum являются константами, они не могут измениться.

Их значения фиксируются во время компиляции.