Avatar billede johny Nybegynder
28. april 2008 - 12:33 Der er 3 kommentarer

if i if i if i (osv.)

Jeg sidder pt. og arbejder med lidt input validering, og i den forbindelse har jeg en del "indstillinger" som der skal tjekkes på, f.eks. har jeg en enum til at fortælle hvor mange af dataene der skal tjekkes, en bool til at fortælle om database nøglerne skal tjekkes, og nogle andre ting også.

I den forbindelse kom jeg til at tænke på om der fandtes en form for "grid if", forstået på den måde, at man laver akser med if/else if/else sætninger, og der hvor de forskellige værdier skærer hinanden er så hvad der skal gøres hvis de samlede kriterier er sande?

Jeg tænkte lidt på, at det kunne gøres ved at definere akserne og de forskellige tilhørende statements, og så derefter definere resultaterne vha. koordinater. På den måde sikrer man netop at der kan være så mange dimensioner i "ifgrid'det", så det er så fleksibelt.

Men som sagt, spørgsmålet var om noget i den stil findes, og hvis ikke, om det overhovedet er programmerbart?
Avatar billede sovsekoder Nybegynder
30. april 2008 - 20:40 #1
nej det findes ikke. Det er programmerbart, men jeg har svært ved at se formålet lige umiddelbart.
Avatar billede Slettet bruger
08. maj 2008 - 17:53 #2
Formlet er klart - endnu en metode til effektivering af kode. Problemet er bare, at det sandsynligvis er for specifikt (kan næsten ikke se andre anvendelsesmuligheder end validering af input) til nogensinde at blive udnyttet. Jeg vil i stedet foreslå, at du gør noget i denne stil:

bool success;
if (!a) { Tekst.Text += "Lol en fejl"; success = false; }
if (!b) { Tekst.Text += "Lol endnu en fejl"; success = false }
if (success) DoYourStuff();

Så skal du ikke skrive betingelserne mere end én gang hver. Kan det bruges?
Avatar billede Slettet bruger
08. maj 2008 - 17:54 #3
Du skal måske også finde et system til at lave linjeskift mellem fejlmeddelelserne til Tekst... Ellers får du en meget sjov meddelelse :) "Lol en fejlLol endnu en fejlLol en fjerde fejlSikke mange fejl"
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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