Avatar billede jmarkling Nybegynder
13. november 2003 - 14:37 Der er 4 kommentarer og
1 løsning

findes der en enum liste lengt funktion?

Jeg har en global enum liste som jeg gerne vil løbe igennem i en løkke... findes der en lenght() fkt, men evt. kunne bruge, når mine konstanter alligevel har default values...

enum FIGURETYPE {LINE, FILLEDRECTANGLE, RECTANGLE, FILLEDCIRCLE, CIRCLE};


eks.

for(int i = 0; i < FIGURETYPE.lenght(); i++)7{

bla bla

}
Avatar billede jpk Nybegynder
13. november 2003 - 14:42 #1
Du kan gøre sådan:

enum FIGURETYPE {LINE, FILLEDRECTANGLE, RECTANGLE, FILLEDCIRCLE, CIRCLE};
for(int i=LINE; i<=CIRCLE; ++i)
{
  ...
}
Avatar billede jpk Nybegynder
13. november 2003 - 14:43 #2
Altså bruge første og sidste værdi i din enum, som start og slut i løkken...
Avatar billede jmarkling Nybegynder
13. november 2003 - 15:04 #3
ok
Avatar billede tax Nybegynder
25. februar 2004 - 10:23 #4
Jeg bruger altid denne syntaks så er det til at huske:

enum
{
  A = 0,
  B,
  C,
  D,
  LETTER_COUNT
};


for(int i =0; i < LETTER_COUNT; i++)
{...}
Avatar billede segmose Nybegynder
25. februar 2004 - 11:05 #5
En forbedring af enum står meget højt på min liste over ændringer i C/C++ til næste standard, følgende punkter er bare mega irriterende:
antal elementer (jeg plejer at gøre som tax gør, men så skal man hver gang lave en count)
max/min element
EnumToStr(xxx)
enumbit  (altså at hver enum svare til en bit med værdierne (1<<0), (1<<1) etc.)
next/prev value.
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