Все ли константы перечислений Enum? Получают ли они преобразованные в их значение во время компиляции или во время выполнения?
С# - все константы Enum?
Ответ 1
Они постоянны. Да, время компиляции.
Ссылка: http://msdn.microsoft.com/en-us/library/sbbt4032.aspx
Из ввода:
Ключевое слово enum используется для объявления перечисление, отдельный тип, который состоит из набора названных константназываемый списком перечислителей.
В разделе "Надежное программирование":
Как и любая константа, все ссылки на отдельные значения перечисление преобразуется в числовое литералов во время компиляции. Это может создавать потенциальные проблемы с версиями как описывается в Constants (программирование на С# Руководство).
Ответ 2
Значения Enum являются константами, они не могут измениться.
Их значения фиксируются во время компиляции.