Warum valenok2003 gegen MT5 ist - Seite 23

 
Roman.:
Im Prinzip ja. Der Assembler hat jmp. Es ist also für etwas bestimmt, nicht wahr?


Assembler hat keine geschweiften Klammern und ifs, also ohne jmp und

ja x Oben > Zahlen ohne Vorzeichen jae x Oben oder gleich >= Zahlen ohne Vorzeichen jb x Unten < Zahlen ohne Vorzeichen jbe x Unten oder gleich <= Zahlen ohne Vorzeichen jc x Carry c==1 (shr,shl,sar,sal,ror,rol... )) jcxz x CX ist Null cx==0 je x Gleich == jz x Null ==0 js x Vorzeichen <0 jg x Größer > Zahlen mit Vorzeichen jge x Größer oder Gleich >= Zahlen mit Vorzeichen jl x Kleiner < Zahlen mit Vorzeichen jle x Kleiner oder Gleich <= Zahlen mit Vorzeichen

lässt sich nicht vermeiden

 

Solange man nicht anfängt, seinen eigenen Compiler zu schreiben, versteht man normalerweise nicht, warum goto unerwünscht ist.

Goto zerstört den Ausführungsfluss, geht aus dem Anwendungsbereich heraus und ist besonders in der OOP schädlich, wo es viele implizite Konstruktoren/Destruktoren gibt. Jeder Compiler-Entwickler wird entsetzt sein, wenn er plötzlich feststellt, dass er gleich in der Mitte des Blocks ins Ungewisse springen muss.

Obwohl C++ aus Kompatibilitätsgründen goto zulässt, schränkt der Compiler die Verwendung von goto stark ein und lässt nur eine schmale Nische für die einfachsten Sprünge in ebenso einfachen Fällen.

 
Ich habe seit Algol-60 kein goto mehr gesehen, das nicht als prozedural bezeichnet werden kann. Und in Assembler ist es ein Sprung zur Speicherzellennummer, aber nicht zum Label. Goto wird in algorithmischen prozeduralen Sprachen nicht benötigt, insbesondere in solchen, die OOP unterstützen.
 

Renat:

Normalerweise versteht man nicht, warum goto unerwünscht ist, bis man anfängt, seinen eigenen Compiler zu schreiben.

Goto unterbricht den Ausführungsfluss, verlässt den Anwendungsbereich und ist besonders in OOP schädlich, wo es viele implizite Konstruktoren/Destruktoren gibt. Jeder Compiler-Entwickler wird entsetzt sein, wenn er plötzlich feststellt, dass er mitten im Block ins Ungewisse springen muss.

Obwohl C++ aus Kompatibilitätsgründen goto zulässt, schränkt der Compiler die Verwendung von goto stark ein und lässt nur eine schmale Nische für die einfachsten Sprünge in ebenso einfachen Fällen.

Extreme Out-of-Block-Escapes mit ausgelösten Destruktoren wurden nicht verwendet. Aber für das frühzeitige Verlassen von verschachtelten Schleifen und für das Springen von verschiedenen Bedingungen zum gleichen Punkt oder zu verschiedenen Punkten ist goto zur Codevereinfachung unverzichtbar. Und es vereinfacht nicht nur die Codeausführung, sondern auch die visuelle Darstellung.

 
Zhunko:

Ich habe Extreme Exit nicht mit Destruktorauslösung verwendet. Aber für das frühzeitige Verlassen von verschachtelten Schleifen und für den Übergang von verschiedenen Bedingungen zum gleichen Punkt oder zu verschiedenen Punkten ist goto für die Codevereinfachung unverzichtbar. Und es vereinfacht nicht nur die Codeausführung, sondern auch die Optik.

Vor allem, wenn es von 554.000 Dummköpfen benutzt wird.
 

Komm schon, lass uns hier Religionskriege spielen. Nun, wenn es kein Foto gibt, dann ist es eben so.

Ich kann mich an keine Situation erinnern, in der ich das so dringend gebraucht hätte, so sehr, dass mir der Schwefel in den Ohren kochte. Ich kann mich nicht einmal an eine Zeit erinnern, in der ich den Gedanken hatte: "Ich wünschte, ich wäre hierher gekommen...". So etwas gab es nicht. Allerdings kann ich nicht sagen, dass meine Algorithmen so einfach sind.

Genauso könnte man goto zulassen, aber aus unerfindlichen Gründen verbieten. Und du hättest überlebt.

 
Mathemat:

Komm schon, wir spielen hier Religionskrieg. Wenn es kein Goto gibt, ist das egal.

Ich kann nicht sagen, dass meine Algorithmen so einfach sind.

Warum zeigen Sie es mir nicht?)
 
tara: Nun, ich würde es Ihnen zeigen :)
Warum zeigen Sie mir nicht einen Algorithmus, der mit goto eleganter ist als ohne.
 
Mathemat:

Komm schon, lass uns hier Religionskriege spielen. Nun, wenn es kein Foto gibt, dann ist es eben so.

Ich kann mich an keine Situation erinnern, in der ich das so dringend gebraucht hätte, so sehr, dass mir der Schwefel in den Ohren kochte. Ich kann mich nicht einmal an eine Zeit erinnern, in der ich den Gedanken hatte: "Ich wünschte, ich wäre hierher gekommen...". So etwas gab es nicht. Allerdings kann ich nicht sagen, dass meine Algorithmen so einfach sind.

Genauso könnte man goto zulassen, aber aus unerfindlichen Gründen verbieten. Und du hättest überlebt.


Nein, das ist nicht fair. Ich benutze sie nie, aber sie ist harmlos.
 
tara: Nein, das ist nicht fair. Ich benutze sie nie, aber sie ist harmlos.
Verwenden Sie für? Es ist im Grunde dasselbe wie für.