ENUM - vad är det och vad används det till?
Förord
Enum är en förkortning av ordet enumerering. Meningen med Enum är att skapa en eller flera variabler som innehåller fasta värden. Dessa grupperas och kan sedan anropas med ett namn istället för ett värdet. På så sätt är det både enklare för dig och de andra som arbetar med programmetInnehåll
»»
»
»
Varför skall jag använda Enum?
Om du exempelvis skriver ett program där det är svåra sifferkombinationer, såsom hex-värden och annat så kan det vara svårt att hålla reda på vad det skall vara. Genom att använda Enum så underlättar du ditt programmeringsarbete avsevärt och minimerar risken att skriva fel. Ett av Enum's syfte är att städat hålla reda på värden som berör en viss grupp av data. Om du senare börjar titta på API anrop för att exempevis söka efter filer på disk, så kommer du se att det krävas höga krav på att du skriver rätt.
När skall jag inte använda Enum?
Det beror på hur mycket programkod du har och hur omfattande ditt projekt är. Jag skulle säga att Enum är ett sätt att förtydliga och förenkla sitt kodande på så finns behovet - använd det i ditt program.
Syntax
[Public | Private] Enum namn Om du skall använda Public Enum så kommer den att vara public för alla projekt om du placerar den i en modul. Väljer du Private Enum kommer den endast att kunna användas på den aktuella formen eller i den aktuella modulen.
Här deklarerar jag en Enum som jag kallar för typer. I denna enum-grupp använder jag fisk, kött, ost och bröd. Till dessa kategorier sätter jag ett värde för att skilja dessa åt. Här har jag inte före Enum skrivit Private eller Public, det är upp till dig att bestämma om det skall kunna användas globalt över projektet eller lokalt på den aktuella formen eller modulen.
Enum typer
fisk = 1
kött = 2
ost = 3
bröd = 4
End Enum
I subrutinen kör vi en enkel select-case fråga och kontrollerar vilket av de värden som vi fick in genom att åter skriva fisk, kött osv i klartext istället för att kanske skriva 1, 2 osv. men det fungerar faktiskt lika bra det med - men då har vi ju förlorat lite av tekniken med att använda oss av Enum.
Till skillnad mot vanliga subrutiner så ser du att jag har skrivit Typ As Typer. Det är detta som är hemligheten till att just de typer presenteras när jag skrev test. och fick upp listan. Detta innebär att du påtvingar programmeraren att välja ett av de fördefinerade alternativen och på så sätt blir det väldigt smidigt.
Sub test(typ As typer)
Select Case typ
Case fisk
MsgBox "Fisk"
Case kött
MsgBox "Kött"
End Select
End Sub
Nu har vi kommit så långt att det faktiskt går att använda vår deklaration så när vi skriver programkod, kommer det att kunna se ut som följer. Vi använder Form_Load för att starta direkt när programmet körs, vi skall kalla en subrutin:
Private Sub Form_Load()
test typer.kött
End Sub
På din editor kommer följande att hända när du skrivit test.typer. . Vi kommer få upp hela listan med de deklarerade konstanterna som vi skrivit och kan enkelt välja ett av dessa alternativ.
Detta betyder att när vi skriver typer. så visas en lista upp med alla de deklarationer vi skrivit in. På så sätt behöver vi aldrig oroa oss längre för att skicka in fel värden, det är solklart vad vi menar när vi väljer bröd. Skull vi skriva 1 så är det inte lika klart längre.
Nu är det dags att göra en liten subrutin som kontrollerar vad det egentligen är vi skickade in när vi valde kött. Jag presenterar här en liten subrutin som heter test och till denna har jag valt att hämta in ett värde.
0 Kommentarer