Ich hab her noch eine kleine Optimierungsmöglichkeit für Schleifen
Meine Theorie:
Eine While Schleife ist schneller als eine For Schleife
Der Grund:
In einer For Schleife muss (zwar nicht zwingend) er die variable erstellt werden, dann wird die Bedingung überprüft und am Ende der Schleife wird die Var erhöht und die Bedingung erneut geprüft.
Die While schleife spart sich die ganzen Schritte von hochzählen und var erstellen,sSie überprüft nur die Bedingung.
Var erstellen ist vorher und die var hochzählen ist mittendrin möglich.
Der Beweis:
Ich hab den Test mit 1000000 Wiederholungen gemacht und dieses Ergebnis erhalten
Eine while schleife ist 2x so schnell wie eine for schleife und eine do while schleife etwas langsamer(manchmal auch schneller, wie bei mir gerade der Fall ) als eine while schleife
1.Testergebnis
while Loop 10037ms
for Loop 20457ms
do while 10218ms
2.Testergebnis
while Loop 10168ms
for Loop 20645ms
do while 9971ms
Code für den Test hier: http://pastebin.com/iyfBCQG2
Die Optimierung:
Aus
for(new i;i<MAX_PLAYERS;i++)
{
//iwas
}
machen wir ganz einfach
new i;
while(i<MAX_PLAYERS)
{
//iwas
i++; // wichtig ist das hier die var um eins hochgesetzt wird sonst ende die Schleife nie :P
}
oder
new i;
do
{
//iwas
i++; // wichtig ist das hier die var um eins hochgesetzt wird sonst ende die Schleife nie :P
}
while(i<MAX_PLAYERS); // wichtig² hier muss ein ; stehen
und für die geschwindigkeit Junkies unter uns
new i;
while(i!=MAX_PLAYERS)
{
//iwas
i++; // wichtig ist das hier die var um eins hochgesetzt wird sonst ende die Schleife nie :P
}
//und
new i;
do
{
//iwas
i++; // wichtig ist das hier die var um eins hochgesetzt wird sonst ende die Schleife nie :P
}
while(i!=MAX_PLAYERS); // wichtig² hier muss ein ; stehen
//Edit: 1.Testergebnis & 2. Testergebnis