enum строка

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Sirik
Perspicaz
Perspicaz
Аватара пользователя
 
Сообщения: 2280
Зарегистрирован: 19.02.2004 (Чт) 16:09
Откуда: Бердичев, Украина

enum строка

Сообщение Sirik » 08.04.2006 (Сб) 13:23

можно ли использовать в enum'е строки?

зы. имхо, где-то встречал или мне приснилось... не помню

Amed
Алфизик
Алфизик
 
Сообщения: 5346
Зарегистрирован: 09.03.2003 (Вс) 9:26

Сообщение Amed » 08.04.2006 (Сб) 13:29


Sirik
Perspicaz
Perspicaz
Аватара пользователя
 
Сообщения: 2280
Зарегистрирован: 19.02.2004 (Чт) 16:09
Откуда: Бердичев, Украина

Сообщение Sirik » 08.04.2006 (Сб) 13:36

да не то, мне надо вот такого типа:
Код: Выделить всё
private enum g
     h = "hello"
end enum


так нельзя никак?

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 08.04.2006 (Сб) 14:35

Нет. Енум автоматически приводится к Long - именно поэтому ты не можешь указать тип при его объявлении.

Правда, как показывает практика, это все-таки не совсем Long, но об этом я напишу как-нибудь отдельно...

Sirik
Perspicaz
Perspicaz
Аватара пользователя
 
Сообщения: 2280
Зарегистрирован: 19.02.2004 (Чт) 16:09
Откуда: Бердичев, Украина

Сообщение Sirik » 08.04.2006 (Сб) 14:37

так я и думал, ну что ж как небудь обойдёмся

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 08.04.2006 (Сб) 14:41

Я в таких случаях обычно определяю строковые константы, названные по одному шаблону, например:
Код: Выделить всё
public const CNST_SETTINGS_AUTOCONNECT as string = "AutoConnect"
public const CNST_SETTINGS_ENFORCERIGHTS as string = "EnforceRightsCheck"
Таким образом, в выпадающем списке IntelliSense они оказываются рядом в соответствии с названиями, и это не сильно отличается от обычного енума.

Роман-вб
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 520
Зарегистрирован: 04.04.2006 (Вт) 9:40
Откуда: Средняя полоса

Сообщение Роман-вб » 08.04.2006 (Сб) 18:43

А зачем в ENUM'е какие-то значения. Он же и по идентификатору работает.
Код: Выделить всё
Public Enum ProjUroven
  u1
  u2
  u3
  u4
  u5
  u6
  u7
  u8
  u9
  u10
  u11
  u12db
  u13db
  u14db
  u15db
End Enum

Или значения ещё для чего-то нужны?
Жить ещё 2 недели, работы на 8 лет, но я докажу на деле, на что способен аскет!

Amed
Алфизик
Алфизик
 
Сообщения: 5346
Зарегистрирован: 09.03.2003 (Вс) 9:26

Сообщение Amed » 08.04.2006 (Сб) 18:46

Прочитай в доках, что вообще есть Enum. Каждой твоей строке соответствует число в Long. А автор хочет, чтобы соответствовал String.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 181

    TopList