JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=85536d6cf2b17217a34acfd8c2ccdce9Medaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Änderungen im SDK Update
Gehe zu Seite Zurück  1, 2, 3, 4, 5
 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> DirectX, OpenGL
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Patrick
Dark JLI Master



Anmeldedatum: 25.10.2004
Beiträge: 1895
Wohnort: Düren
Medaillen: Keine

BeitragVerfasst am: 07.04.2005, 20:21    Titel: Antworten mit Zitat

PeaceKiller hat Folgendes geschrieben:
bei i++ erstellt der Compiler eine temporäre Variable.


*tilt* Falsch Wink

http://www.jliforum.de/board/viewtopic.php?t=3163 << Blick ins FAQ hilft Wink
_________________
'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
FH
Super JLI'ler


Alter: 37
Anmeldedatum: 16.10.2004
Beiträge: 438

Medaillen: Keine

BeitragVerfasst am: 07.04.2005, 21:10    Titel: Antworten mit Zitat

Patrick hat Folgendes geschrieben:
PeaceKiller hat Folgendes geschrieben:
bei i++ erstellt der Compiler eine temporäre Variable.


*tilt* Falsch Wink

http://www.jliforum.de/board/viewtopic.php?t=3163 << Blick ins FAQ hilft Wink

Kann man daraus ablesen, dass keine Temp-Variable erstellt wird? Also ich nicht... Vlt. überseh ich aber auch was... Trotzdem: Recht hasste!
Mal ne Alternative erklärung: Bei i++ wird zuerst der Wert zugewiesen, dann inkremiert... Da ein Prozessor keine Zuweisung und Inkremantation (die kennt eine CPU wirklich!) ausführen kann, macht er eins nach dem anderen. Der Unterschied zwischen i++ und ++i is nur, dass einmal zuerst zugewiesen, dann inkrementiert wird, das andere mal umgekehrt...
Wenn jemand Assembler kann, wird er das verstehen... Der Rest: Hoffentlich auch Wink
Gruß

FH
<edit>
Warum man dann allerdings ++i statt i++ verwenden soll, is mir auch ein Rätsel... Das is ne Geschmackssache (jaja, gibt sicher irgendeinen Standard, der das vorrschreibt...). Aber vom Speed hier dürft es sich IMO nix nehmen...
</edit>
_________________
goto work, send your kids to school
follow fashion, act normal
walk on the pavement, watch T.V.
save for your old age, obey the law
Repeat after me: I am free
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
The Lord of Programming
Living Legend


Alter: 37
Anmeldedatum: 14.03.2003
Beiträge: 3122

Medaillen: Keine

BeitragVerfasst am: 07.04.2005, 21:28    Titel: Antworten mit Zitat

FH hat Folgendes geschrieben:
<edit>
Warum man dann allerdings ++i statt i++ verwenden soll, is mir auch ein Rätsel... Das is ne Geschmackssache (jaja, gibt sicher irgendeinen Standard, der das vorrschreibt...). Aber vom Speed hier dürft es sich IMO nix nehmen...
</edit>

Hmm...ist vielleicht bei kleineren Schleifen unerheblich. Aber ich denke, dass es bei großen Schleifen schon eine Bremse sein kann. Wenn du bedenkst, dass die Operation mit ++i eben viel einfacher abläuft Wink
Wenn jemand mir erklärt, warum es anders sein soll, lass ich mich natürlich auch gerne belehren =)
_________________
www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console


Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Patrick
Dark JLI Master



Anmeldedatum: 25.10.2004
Beiträge: 1895
Wohnort: Düren
Medaillen: Keine

BeitragVerfasst am: 07.04.2005, 21:31    Titel: Antworten mit Zitat

Darin gibt es keinen Standard welches man benutzen soll! Wink

Beide haben ihre eigenen Existenzgründe, jedoch da ++i logischer im Rückgabewert ist als i++ sollte man ihn allein schon bei Schleifen des Aspektes der "Einheitlichkeit und Logik" vorziehen.
_________________
'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
FH
Super JLI'ler


Alter: 37
Anmeldedatum: 16.10.2004
Beiträge: 438

Medaillen: Keine

BeitragVerfasst am: 07.04.2005, 21:31    Titel: Antworten mit Zitat

The Lord of Programming hat Folgendes geschrieben:
FH hat Folgendes geschrieben:
<edit>
Warum man dann allerdings ++i statt i++ verwenden soll, is mir auch ein Rätsel... Das is ne Geschmackssache (jaja, gibt sicher irgendeinen Standard, der das vorrschreibt...). Aber vom Speed hier dürft es sich IMO nix nehmen...
</edit>

Hmm...ist vielleicht bei kleineren Schleifen unerheblich. Aber ich denke, dass es bei großen Schleifen schon eine Bremse sein kann. Wenn du bedenkst, dass die Operation mit ++i eben viel einfacher abläuft Wink
Wenn jemand mir erklärt, warum es anders sein soll, lass ich mich natürlich auch gerne belehren =)

Warum läuft sie mit ++i viel einfacher ab???
Gruß

FH
_________________
goto work, send your kids to school
follow fashion, act normal
walk on the pavement, watch T.V.
save for your old age, obey the law
Repeat after me: I am free
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
FH
Super JLI'ler


Alter: 37
Anmeldedatum: 16.10.2004
Beiträge: 438

Medaillen: Keine

BeitragVerfasst am: 07.04.2005, 21:37    Titel: Antworten mit Zitat

Ich hab gerade getestet:
Debug-Version einer EXE im VC++ 6.0, zwei for-Schleifen, eine mit ++i, die andere mit i++. Vom AssemblerCode her is es total egal!
Gruß

FH
_________________
goto work, send your kids to school
follow fashion, act normal
walk on the pavement, watch T.V.
save for your old age, obey the law
Repeat after me: I am free
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
PeaceKiller
JLI Master


Alter: 36
Anmeldedatum: 28.11.2002
Beiträge: 970

Medaillen: Keine

BeitragVerfasst am: 07.04.2005, 21:40    Titel: Antworten mit Zitat

Dafür ist dein Compiler ja da Very Happy

Das man sich nicht mit so dummen low-level fragen beschäftigen muss.
_________________
»If the automobile had followed the same development cycle as the computer, a Rolls-Royce would today cost $100, get a million miles per gallon, and explode once a year, killing everyone inside.«
– Robert X. Cringely, InfoWorld magazine
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
The Lord of Programming
Living Legend


Alter: 37
Anmeldedatum: 14.03.2003
Beiträge: 3122

Medaillen: Keine

BeitragVerfasst am: 07.04.2005, 21:46    Titel: Antworten mit Zitat

FH hat Folgendes geschrieben:
The Lord of Programming hat Folgendes geschrieben:
FH hat Folgendes geschrieben:
<edit>
Warum man dann allerdings ++i statt i++ verwenden soll, is mir auch ein Rätsel... Das is ne Geschmackssache (jaja, gibt sicher irgendeinen Standard, der das vorrschreibt...). Aber vom Speed hier dürft es sich IMO nix nehmen...
</edit>

Hmm...ist vielleicht bei kleineren Schleifen unerheblich. Aber ich denke, dass es bei großen Schleifen schon eine Bremse sein kann. Wenn du bedenkst, dass die Operation mit ++i eben viel einfacher abläuft Wink
Wenn jemand mir erklärt, warum es anders sein soll, lass ich mich natürlich auch gerne belehren =)

Warum läuft sie mit ++i viel einfacher ab???
Gruß

FH

<edit>
Ich glaube, das mal irgendwo gelesen zu haben. Weiß aber nicht mehr genau...
</edit>
_________________
www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console


Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Patrick
Dark JLI Master



Anmeldedatum: 25.10.2004
Beiträge: 1895
Wohnort: Düren
Medaillen: Keine

BeitragVerfasst am: 07.04.2005, 21:58    Titel: Antworten mit Zitat

Wer neugierig ist:
CPP:
int main (void)
{
    unsigned int x = 0;
    ++i;

    unsigned int y = 0;
    i++;
}


Einfach den Assembleroutput der Release-Version (!!!!) ausgeben lassen, das einzige was anders ist, ist der Rückgabewert. Ansonsten: Äquivalent.
_________________
'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
HomeLess_PunkDrummer
JLI Master Trainee


Alter: 36
Anmeldedatum: 28.11.2004
Beiträge: 583
Wohnort: Alter Joghurtbecher an der A4
Medaillen: Keine

BeitragVerfasst am: 08.04.2005, 18:26    Titel: Antworten mit Zitat

Warum dann also alles ändern Question Rolling Eyes
_________________
"Was die Götter angeht, so ist es mir unmöglich, zu wissen, ob sie existieren oder nicht, noch, was ihre Gestalt sei. Die Kräfte, die mich hindern, es zu wissen, sind zahlreich, und auch ist die Frage verworren und das menschliche Leben kurz."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Patrick
Dark JLI Master



Anmeldedatum: 25.10.2004
Beiträge: 1895
Wohnort: Düren
Medaillen: Keine

BeitragVerfasst am: 08.04.2005, 20:45    Titel: Antworten mit Zitat

HomeLess_PunkDrummer hat Folgendes geschrieben:
Warum dann also alles ändern Question Rolling Eyes


Rückgabewert, zum 13. male in diesem Forum Wink
_________________
'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> DirectX, OpenGL Alle Zeiten sind GMT
Gehe zu Seite Zurück  1, 2, 3, 4, 5
Seite 5 von 5

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum