Avatar billede brobaek Nybegynder
08. februar 2004 - 18:15 Der er 2 kommentarer

"Navn" på enum

Jeg har en enum, hvor man jo referer til numrene, dvs.

public enum AniTypes
  chicken=0
  dog=1
  cat=2
  mouse=3
end enum

Nu har jeg det problem, at jeg har en sub med værdien (et tal), og hvor brugeren indtaster FUserInput "uCat", "uDog", "uMouse" etc., dvs. et u foran dyrenavnet - lad nu vær at spørge hvorfor - det er et forsimplet eks. :-)

public sub CorrectAnimal(Animal as AniTypes, FUserInput as string)
if Animal=mid(FUserInput,2) then
  msgbox "Rigtigt"
else
  msgbox "Forkert"
end if
end function

Problemet er, at jeg sammenligner lidt æbler og bananer. Animal indeholder et tal (0-3) og FUserInput indeholder en streng. Kan jeg ikke lave enum'en om til tekst-værdien ?

Selvfølgelig kan jeg lave en select case, men der er ret mange så det bliver temmelig voldsomt at vedligeholde.

Mvh
Martin
Avatar billede zhasha Nybegynder
06. august 2004 - 21:58 #1
det kan man ikke med enum. enum = Enumerate, dvs numerering. men skal du bruge tal verdierne. og i så fald, hvordan? jeg forstår det ikke helt. men du kunne jo lave en type feks:
type uAnimal
    uName as string
    uNumber as long
end type
og så måske lave et array af dem. kan du bruge det til noget?
Avatar billede zhasha Nybegynder
06. august 2004 - 22:02 #2
du skal ikke være bange for at bruge for meget memory, det bliver aldrig aktuelt da en long kun er 4 bytes og en string er så mange bytes som der er karakterer i den (måske omkring 10b i din app dèr). og hvis du har 100 dyr så blir det så kun 1400 bytes hvilket svarer til 1.4kb (eller der omkring)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester