Fehler, Irrtümer, Fragen - Seite 1583

 

Der Compiler wird keinen Fehler erkennen, wenn der Klassenname und der Funktionszeiger gleich sind

class fn {};
typedef void (*fn)();
void OnStart()
{
        Print( sizeof( fn ));
}
 

Problem: Beim Testen eines EA in der Cloud läuft alles gut. Ich beende die Optimierung, nach einiger Zeit starte ich sie wieder - die OnInit-Fehlermeldungen kommen weiterhin. Es hilft, EA in eine Datei mit einem anderen Namen umzubenennen und die Optimierung in der Cloud mit denselben Parametern durchzuführen - ohne Fehler.

Ich denke, es könnte daran liegen, dass der EA während des Initialisierungsprozesses Zugriff auf die Zeichen benötigt, die nicht zum Starten des Tests verwendet werden.

Ich benutze die Cloud in letzter Zeit sehr oft und gebe echtes Geld dafür aus, also bitte ignorieren Sie den Fehlerbericht nicht. Ich kann den Code des Expert Advisors nicht sofort zur Verfügung stellen, da er dem Kunden gehört.

P.S. Jetzt während des Tests aus irgendeinem Grund das Terminal getrennt von der Cloud-Server und wieder mit ihm verbunden und diese Fehler wieder gestartet, auch ohne Neustart des Tests

[Gelöscht]  
Comment(1/100); Ausgaben 0, warum und wie bekämpfe ich es?
 
Aliaksandr Kryvanos:
Comment(1/100); Ausgaben 0, warum und wie bekämpfe ich es?

Zum Beispiel: Comment((double)1/100);

Oder so: Kommentar(1.0/100);

[Gelöscht]  

Nein, so funktioniert das nicht, 0 setzt


Ich habe das ganze Arsenal verwendet (double, DoubleToStr, Normalize...), aber nichts

 
Aliaksandr Kryvanos:
Nein, so funktioniert es nicht, es setzt 0
Ich habe soeben in beiden Terminals getestet, es funktioniert gut und stellt 0,01
 
Aliaksandr Kryvanos:
Nein, so funktioniert es nicht, es setzt 0.
Zeigen Sie dem Compiler also ausdrücklich, dass die Zahlen gültig sind: Comment(1.0/100.0); oder Comment(1.0*0.01);
 

я использовал весь арсенал (double, DoubleToStr, Normalize...), но вот никак

DoubleToStr und Normalize funktionieren nicht, da der Ausdruck selbst int ist, wenn er nicht explizit in double umgewandelt wird. Wahrscheinlich haben Sie mein Beispiel nicht richtig wiedergegeben und voreilige Schlüsse gezogen.
[Gelöscht]  
Danke, es funktioniert.)
 

Es fühlt sich an wie ein und derselbe Agent mit niedriger PR, der einen Run nach dem anderen bekommt, dem es an Speicherplatz mangelt und der einen Teil der Optimierung in die Luft jagt (andere Agenten haben genug und alles funktioniert lokal gut). Warum werden solche Mittel nicht sofort aus den Fortsetzungsprüfungen entfernt?