Fehler, Irrtümer, Fragen - Seite 1337
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
Die Entwickler sind nicht humorlos.
Klingt für mich nach einem Download und einer Art "Download"-Baumschwung nach rechts oder links.
Wenn "schwanken", hätten Sie es mit einem Baum vergleichen können: "rechts/links" - Sie sind auch humorvoll (verschmolzen "rechts/links")
Das "Schwanken" des Bootes ,
Und die Sache mit der (verschmolzenen) rechten/linken Seite ist nicht meine Schuld, sondern die von Firefox.
Bei den Zeichen BR-8.15 und BR-10.15 gibt es Störungen, bei den anderen BR-Zeiträumen ist alles in Ordnung.
Build 1150 echte Öffnung win7 x64 max
Videodateien .mp4 im Trailer.
+ im Zeitraum M1 (zum Beispiel)
Wenn Sie auf die Schaltfläche "Auto-Scroll Chart zum Ende mit der Ankunft der neuen Ticks" - das Diagramm wird an den Anfang verschoben
Wenn Sie dann die Taste "ENDE" drücken, bewegt sich das Diagramm für eine Sekunde an das Ende und dann wieder an den Anfang.
Ich hatte vorher nicht viel darauf geachtet, aber jetzt, bei der Arbeit mit großen Arrays von Klassenobjekten, ist mir ein zu großer Speicherverbrauch aufgefallen. Ich habe es mit sizeof() überprüft und eine absolut leere Klasse benötigt 16 Bytes. Und wenn man bedenkt, dass die Klassen hier verwaltet werden, kommen noch einmal 8 Bytes pro Zeiger hinzu. Insgesamt sind es 24 Bytes. Das ist zu teuer.
Ich habe die Dokumentation durchgesehen und gesehen, was ich dort gefunden habe:
Es stellt sich die Frage, warum einfache Klassen (die nicht an der Vererbung beteiligt sind) die virtuelle Funktionstabelle benötigen, da alles über diese Klassen in der Kompilierungsphase bekannt ist.
Es stellt sich heraus, dass die Methoden darin auf die gleiche Weise aufgerufen werden wie virtuelle Methoden, d.h. es gibt eine zusätzliche Umleitung des Zugriffs über die Tabelle. Und wo bleibt die gelobte Compiler-Optimierung? Wie können wir danach einen Vergleich der Leistung mit C++ anstellen?
Außerdem werden in MQL einige virtuelle Aufrufe als normale Funktionsaufrufe und nicht über die Tabelle ausgeführt.
Wie Renat schrieb, haben Klassen in MQL eigentlich immer eine virtuelle Tabelle, die 8 Bytes + 8 Bytes Metainformationen enthält.
Die Entwickler sind nicht humorlos.
Klingt für mich nach einem Download und einer Art "Download"-Baumschwung nach rechts oder links.
Die hervorgehobene Annahme ist falsch, nur virtuelle Methoden werden über die Tabelle aufgerufen und meine Aussage gilt nicht nur für MQL-Compiler.
Außerdem werden in MQL einige virtuelle Aufrufe als normale Funktionsaufrufe durchgeführt, nicht über eine Tabelle.
Wie Renat schrieb, haben Klassen in MQL in der Tat immer eine virtuelle Tabelle, die 8 Bytes + 8 Bytes an Metainformationen enthält.
Danke für die Antwort, aber könnten Sie bitte erklären, warum eine einfache Klasse, die von niemandem geerbt wird und daher nicht an der Virtualisierung teilnimmt, eine Tabelle benötigt? Renat erwähnte virtuelle Destruktoren, aber in diesem Fall gibt es nichts zu virtualisieren. Da es nur einen Destruktor gibt, kann dieser auch inlined werden, so dass nur 8 Bytes an Metadaten übrig bleiben.
Das Laufzeitsystem (MQL-Programmumgebung) geht von der Annahme aus, dass eine Klasse mindestens 16 Byte belegt.
Baujahr 854 vin 10 64 x
Wenn beim Testen von EAs mit Visualisierung versucht wird, ein anderes zuvor geöffnetes Fenster als das aktuelle Arbeitsfenster mit dem Test zu schließen, wird der Test unterbrochen ...
Geschlossen über mittlere Maustaste und Kontextmenü ...