Verfasst: 22.04.2007 19:47
@PBprogger
>
Lach mich nicht aus!
Kleiner Scherz
>



Lach mich nicht aus!

Kleiner Scherz
Das deutsche PureBasic-Forum
https://www.purebasic.fr/german/
Hallo!Hallo zusammen,
ich bin bei der Optimierung eines Programmes und stelle mir die Frage was wohl grundsätzlich schneller ist:
Eine Select-Abfrage oder eine If-Abfrage. Persönlich verwende ich gerne wegen der Übersicht Select.
Gibts da Erfahrungen oder gar echte Fakten?
Code: Alles auswählen
Dim test.l(99)
For n=0 To 99
test(n) = Random(4)
Next
count = 0
timer1 = ElapsedMilliseconds()
For t = 0 To 999999
For n = 0 To 99
tester = test(n)
Select tester
Case 0
count + 1
Case 1
count + 1
Case 2
count + 1
Case 3
count + 1
Case 4
count + 1
EndSelect
Next
Next
timer1 = ElapsedMilliseconds()-timer1
count = 0
timer2 = ElapsedMilliseconds()
For t = 0 To 999999
For n = 0 To 99
tester = test(n)
If tester = 0
count + 1
EndIf
If tester = 1
count + 1
EndIf
If tester = 2
count + 1
EndIf
If tester = 3
count + 1
EndIf
If tester = 4
count + 1
EndIf
Next
Next
timer2 = ElapsedMilliseconds()-timer2
MessageRequester("SpeedTest","Select: "+Str(timer1)+#CRLF$+"If: "+Str(timer2))
Kennste nicht Cool'n'Quit?ich hab keinen Plan, was CnQ is, is auch egal.
aber wie gesagt, der unterschied ist marginal, also vernachlässigbar.Select: 1844
If: 1937
Select: 1844
If: 1904
Select: 1875
If: 1812
Select: 1844
If: 1890
Select: 1860
If: 1890
Select: 1860
If: 1812