2009-01-01 12 views
9

Czy wszystkie wyliczenia Enum są stałe? Czy uzyskują one przekonwertowane na ich wartość podczas kompilacji lub w czasie wykonywania?C# - czy wszystkie są stałe Enum?

+0

Nie mogę sobie wyobrazić, dlaczego ktoś miałby głosować na to pytanie. – AnthonyWJones

+0

Może dlatego, że myślał, że każdy może odpowiedzieć na to pytanie z Google i powinien spróbować tego najpierw. Osobiście jeszcze nie doszedłem do wniosku, gdzie narysować linię, ale IMHO powinna być linia. –

+0

Google jest zasilany przez takie witryny, więc takie proste pytania są w porządku. Wolałbym te wszystkie głupie pytania ankietowe. –

Odpowiedz

16

Są stałe. Tak, skompiluj czas.

referencyjny: http://msdn.microsoft.com/en-us/library/sbbt4032.aspx

Z Intro:

Słowo kluczowe enum służy do deklarowania wyliczenie, odrębny typ, który składa się z zestawu nazwanych stałych nazywany lista wyliczników.

W „Robust programowania”:

Podobnie jak w przypadku stałej, wszystkie odniesienia do poszczególnych wartości enum są przekształca się numeryczne literałach w czasie kompilacji. Może to stworzyć potencjalne problemy związane z wersjami jako opisane w Stałych (C# Programowanie Przewodnik).

6

Wartości wyliczeń są stałe, nie można ich zmienić.

Ich wartości są ustalane w czasie kompilacji.