Hilfe! - Seite 6

 
Sie packten ein 40 kg schweres Paket auf einen Esel, dann bemerkten sie, dass sie eine 1 kg schwere Flasche vergessen hatten - das ist kein Problem, es ist mehr als 1 kg weniger, also packten sie die Flasche auch auf den Esel. Wenn man also ein Kilo auf einen Esel packt (was für einen Esel unbedeutend ist), kann man ihn mit unendlich großen Lasten beladen.
 
Andrey Khatimlianskii:

Ich glaube, dass nur du, Dima, hier von "es" gesprochen hast.)

Es wurde über funktionierenden Code diskutiert, bei dem if der schnellste Teil ist.

Switch funktioniert fast sofort, Sie können es für universelle EA verwenden. Aber ich sehe den Sinn nicht.

Von hier aus ging es los.

Besser nicht ein Schalter, sondern OOP-Polymorphismus.

 
Dmitry Fedoseev:
Wenn wir einen Esel mit 40 kg beschweren und dann feststellen, dass wir eine 1 kg schwere Flasche vergessen haben, ist das kein Problem, und wenn wir 1 kg weniger beschweren, ist das auch kein Problem. So kann man einem Esel eine endlose Last von jeweils einem Kilogramm aufbürden (was für einen Esel unbedeutend ist).

Kein Kredit.

Sie hängen 20 Gramm leere Fläschchen an einen Esel. Und es ist ihm wirklich egal.

Das Wasser, das dort hineingeschüttet wird, macht ihm schwer zu schaffen (schwere Funktionen).

Dmitry Fedoseev:

Von hier aus ging es los.

Besser nicht ein Sweep, sondern ein OOP-Polymorphismus.

In diesem Beispiel können Sie mindestens 10 ifs einfügen, ohne dass sich dies auf die Arbeitsgeschwindigkeit (sowie die Test- und Optimierungsgeschwindigkeit) auswirkt (<1% Verlangsamung).

Denn in der benachbarten Funktion werden die Aufträge analysiert oder zumindest die Auftragssumme abgefragt, und in der anderen Funktion wird die Zeit unter Berücksichtigung der GMT-Verschiebung überprüft.

 
Andrey Khatimlianskii:

...

In diesem Beispiel können Sie mindestens 10 ifs einfügen, ohne dass sich dies auf die Arbeitsgeschwindigkeit (sowie die Test- und Optimierungsgeschwindigkeit) auswirkt (<1% Verlangsamung).

Der Grund dafür ist, dass die nebenstehende Funktion die Aufträge oder zumindest die orderTotal-Anfrage aufzählt, und die andere Funktion die Zeit unter Berücksichtigung der GMT-Verschiebung überprüft.

An dieser Stelle einfügen, an einer anderen einfügen, an einer anderen einfügen, usw... und der Esel flieht.

Die Zweckmäßigkeit einer zusätzlichen Kontrolle ist in diesem Beispiel minimal. Jemand möchte im Gegenteil, dass die Order sofort nach dem Start des EAs geöffnet wird, auch wenn der EA auf Balken arbeitet. Aber unser Expert Advisor ist super kompetent darin, den Shit-Code zu definieren, und alles, was seiner Meinung nach falsch ist, ist ein Shit-Code.

Du erklärst mir alles so, als ob ich keinen einzigen EA gesehen hätte, den ich gar nicht geschrieben hätte. Es stellte sich heraus, dass ich nicht einmal weiß, wie man eine if-Bedingung richtig schreibt.

Für einen Esel ist das nicht schwer, man schüttet das Wasser nicht auf einmal in die Flaschen, sondern eine nach der anderen. Es ist bewiesen, dass ein Esel mit einer unendlichen Menge an Gewicht beladen werden kann.

 
Dmitry Fedoseev:

Ich hätte nicht mit meiner eigenen Cleverness beginnen sollen:

Wir haben es einfach aufgegriffen! ;)

 
Reduziert und daher gibt es keinen Grund zu schieben, wenn man darauf verzichten kann.
 

Hören Sie schon auf. Das schnellste Programm ist ein OnTick(); und das war's.

Alles, was mehr Code enthält, wird langsamer sein. Und wenn man über die Geschwindigkeit nachdenken muss, geht es sicher nicht um das Ob.

Ein if kann in OpenCL-Code entscheidend sein, da es eine Verzweigungslogik erzeugt, die zur Unsynchronisierung von Threads führt. Aber auch hier ist es nicht if selbst, das die Verlangsamung verursacht, sondern die Threads, die aufgrund der unterschiedlichen Logik mit unterschiedlichen Geschwindigkeiten arbeiten. Auch in diesem Fall sollten Sie nicht versuchen, die Anzahl der ifs zu reduzieren, sondern die Operationen in if- und else-Blöcken "vereinheitlichen", z. B:

anstelle von

if(a>0.0)
  a = b;

verwenden müssen

if(a>0.0)
  a = b;
else
  a = a;

dann bleibt die Anzahl der Operationen in den verschiedenen Threads erhalten, und es gibt keine Desynchronisation und die Ausführungsgeschwindigkeit ist höher, obwohl es mehr Code gibt.

 
Dmitry Fedoseev:

An einen Ort stellen, an einen anderen stellen, an einen anderen stellen und so weiter... und der Esel wird abhauen.

Die Zweckmäßigkeit einer zusätzlichen Kontrolle ist in diesem Beispiel minimal. Jemand möchte im Gegenteil, dass die Order sofort nach dem Start des EAs geöffnet wird, auch wenn der EA auf Balken arbeitet. Aber unser Expert Advisor ist per Definition super-autoritär 00000 und alles, was nicht so ist wie er, ist xxxxxx.

Ihr erklärt es mir alle so, als ob ich noch nie einen EA gesehen hätte, nicht dass ich jemals einen geschrieben hätte. Es stellt sich heraus, dass ich nicht einmal weiß, wie man die richtige if-Bedingung schreibt.

Sie gießen das Wasser nicht auf einmal in die Flaschen, sondern eine nach der anderen. Es ist bewiesen, dass der Esel mit unendlich vielen Lasten beladen werden kann.

Es ist nicht nur das Programm, das auf die Spitze getrieben werden kann. Das ist genau das, was Sie tun.

Wenn Sie sagen, dass Sie wissen, wie es geht, müssen Sie das Prinzip des if-Operators verstehen. Oder etwa nicht?

Und vergleichen Sie einen if-Operator nicht mit einem Esel, ein Esel sitzt in Ihrem Gehirn und schreibt Unsinn. Und vergleichen Sie den "if"-Betreiber nicht mit einem Esel, der in seinem Gehirn sitzt und Blödsinn schreibt.

 
Packen Sie Ihre Lieblingsessen ein, wo immer Sie wollen
 
Joo Zepper:

anstelle von

sollten Sie


Warum nicht andersherum?
Grund der Beschwerde: