Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Versucht , ein Array auf globaler Ebene zu deklarieren (mql4-Code)
Füllen Sie es in das Feld
Wenn es beim Start nicht gesetzt ist, wird das Datum 1971 gedruckt, d.h. das Feld ist leer.
Wenn ich das Feld am Anfang fülle, erscheinen die Werte. Vielleicht liegt es daran, dass das Array zu bestimmten Zeiten neu initialisiert wird, aber ohne das Array lässt sich der Code nicht kompilieren?
Das Feld verschwindet. Was mache ich falsch?
Hier habe ich eine Idee, falls jemand sie auch braucht. Ich habe ein Feld in ein anderes kopiert.
Hier ist eine Idee, falls jemand sie auch braucht. Kopieren eines Arrays in ein anderes.
Wozu ist das gut?
Die ursprüngliche Frage war, dass das Array in den folgenden Iterationen der Optimierung nicht neu berechnet werden sollte. Jetzt wird er einfach ausgefüllt und in den anderen kopiert. Das wird nichts nützen. Ich gehe davon aus, dass dieses Array T[40] nur zur Veranschaulichung so dargestellt wird, während es in Wirklichkeit sequentiell berechnet und gefüllt werden sollte. Bei jedem weiteren Optimierungslauf wird dieses Feld wie zuvor neu berechnet, mit dem einzigen Unterschied, dass es anders organisiert ist.
Wozu dient es?
Die ursprüngliche Frage war, dass das Array in den folgenden Iterationen der Optimierung nicht neu berechnet werden sollte. Und jetzt wird er einfach ausgefüllt und in einen anderen kopiert. Das wird nichts nützen. Ich gehe davon aus, dass dieses Array T[40] nur zur Veranschaulichung so dargestellt wird, während es in Wirklichkeit sequentiell berechnet und gefüllt werden sollte. Bei jedem weiteren Optimierungslauf wird dieses Array in der gleichen Weise neu berechnet, mit dem einzigen Unterschied, dass es anders angeordnet ist.
Das durch geschweifte Klammern deklarierte Array wurde nicht gespeichert; es konnte nicht global deklariert und dann in der inite gefüllt werden (das Array wurde nicht innerhalb eines Durchlaufs gespeichert).
Zwischen den Iterationen der Optimierung wird das Array, so wie ich es verstehe, nicht gespeichert, d. h. das Programm setzt alles zurück, was vorher war.
Das mit geschweiften Klammern deklarierte Array wurde nicht gespeichert, es konnte nicht global deklariert und dann im inite gefüllt werden (das Array wurde nicht in einem Durchlauf gespeichert).
Zwischen den Iterationen der Optimierung wird das Array, so wie ich es verstehe, nicht gespeichert, d. h. das Programm setzt alles zurück, was vorher war.
Und wenn das Array auf diese Weise gefüllt wird, können Sie auch alle Elemente in geschweiften Klammern auf globaler Ebene auflisten. Ich verstehe den Sinn dieser Zauberei nicht...
Sie könnten es auf einer globalen tun. Aber die Idee, darauf einen Turm aus mehreren tausend Elementen zu bauen, gefiel mir nicht).
Gott sei Dank ist alles so gelaufen, wie Sie es wollten.
Hat sich die Geschwindigkeit erhöht?
Gott sei Dank ist alles so gelaufen, wie Sie es wollten.
Hat sich die Geschwindigkeit erhöht?
Ich habe kein neues Thema erstellt.
Jetzt versuche ich Folgendes zu tun: Es gibt ein Array mit dem ersten Wert Datum, zweite und dritte Zahlen double. Ich muss das Array nach Datum sortieren, aber ich möchte die zweiten und dritten Werte an das Datum gebunden werden.
Dann plane ich, mehrere Arrays in einem zusammenzufassen und sie nach Datum zu sortieren.
Ich habe versucht, es auf diese Weise zu tun, aber soweit ich verstehe, wird die Sortierung nach Array-Index durchgeführt, d. h. nach i.
m[i][0]=Data;
m[i][1]=f1;
m[i][2]=f2;
Ich habe kein neues Thema erstellt.
Jetzt versuche ich Folgendes zu tun: Es gibt ein Array mit dem ersten Wert Datum, zweite und dritte Zahlen double. Brauchen Sie, um das Array nach Datum Wert zu sortieren, aber haben die zweiten und dritten Werte an das Datum gebunden.
...
Siehe hier:https://www.mql5.com/ru/forum/42036
Es geht hauptsächlich um Klassen, die für mich ein dunkler Wald sind. Aber einige Gedanken sind aufgetaucht. Erstellen Sie ein Array mit getrennten Daten und Zahlen. Nur, wie erhält man die Indexnummer, in der sich die Daten nach der Sortierung befinden, d. h. wie erhält man das i, das sich in der zweiten Dimension befindet?
double d[215][2];
m[0][i]=Dat_DtTm;
d[i][0]=f1;
d[i][1]=f2;