15. januar 2010 - 16:40Der er
8 kommentarer og 1 løsning
Gøre if-sætninger kortere
Hej,
Her er lidt kode:
if totalfeeds = 1 then feed_total := feed[0] else if totalfeeds = 2 then feed_total := feed[0]+feed[1] else if totalfeeds = 3 then feed_total := feed[0]+feed[1]+feed[2];
Sådan fortsætter den indtil totalfeeds = 25.
Det bliver mildest talt ret grimt at kigge på, og ikke mindst fylder det utroligt meget.
Jeg vil gerne høre om det på en eller anden måde kan lade sig gøre at forkorte koden, evt. med en for/do sætning. Har prøvet, men kan ikke få det til at virke. Det er som om man ikke kan få lov til at lægge array-elementer sammen på anden vis.
I dette tilfælde ville en "case" ikke gøre det ret meget kønnere, løsningen med et loop er klart at foretrække.
Synes godt om
Slettet bruger
16. januar 2010 - 18:54#5
Næ måske ikke og dog.
En løkke kan gøre ting meget ulæselige. Hvor en case gør det meget mere overskueligt for en anden og compileren er ligeglad. Koden bliver stort set den samme.
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.