Fehler, Irrtümer, Fragen - Seite 2163
![MQL5 - Sprache von Handelsstrategien, eingebaut ins Kundenterminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Ich glaube, dass Sie bei Optimierungen viel besser sind, aber aus der Perspektive eines gewöhnlichen Benutzers sieht es seltsam aus - Sie behaupten, dass der MQL-Compiler Code erzeugt, der mit C++ vergleichbar ist, aber dann stellt sich heraus, dass die Arrays in MQL überhaupt nicht schnell sind.Verwaltete/verwaltete Sprache bedeutet eindeutig, dass Arrays streng kontrolliert werden müssen. Ohne dies kann die Sprache nicht sicher sein.
Bei statischen Arrays ist die Steuerung einfacher und kann in der Phase der Code-Optimierung teilweise vereinfacht werden. Bei dynamischen Arrays gibt es mehr Kontrolle und es ist schwierig, sie zu vereinfachen.
Der Code wird auf C++-Qualitätsniveau generiert, aber es gibt sicherlich einen Overhead bei verwalteten Dingen. Mathe, Schleifen und alles andere ist auf C++-Niveau.
der Array-Index ist bestenfalls auch auf einen einzigen direkten Assembler-Befehl reduziert, so dass die Frage immer noch besteht
In verwalteten Sprachen nur in statischen Arrays mit konstanter Indizierung. Das heißt, wenn der Optimierer zu 100 % sicher ist, dass eine Überprüfung der Grenzen und der Pufferverfügbarkeit nicht erforderlich ist.
Wenn die Bedingungen verletzt werden, erscheint die Prüfung auf Vorhandensein von Puffer und Grenzen.
Dies ist ein Grundwissen, das man beim Programmieren haben sollte.
Wenn eine überladene Funktion ein enumToString hat, dann gibt es ein Problem, wenn es für eine ganze Zahl aufgerufen wird...
Ich habe auf diese https://www.mql5.com/ru/forum/1111/page1297#comment_1382986 geachtet.
Aber sie haben nichts geändert, so dass ::EnumToString in Vorlagen in vielen Fällen nutzlos ist
Projekte weiter erforschen und über folgende Punkte stolpern
#resource "\\Experts\\[Project 2018]\\Expert Name\\Resources\\img\\open_buy.bmp"
resource name is too long '\Experts\[Project 2018]\Expert Name\Resources\img\open_buy.bmp' CPanel.mqh 6 1
Warum brauchen wir Projekte, wenn wir begrenzt sind?
Ein Projekt ist PROJECT!!!!!, das 1000 Bilder, Sounds, Hilfedateien haben könnte, und wir müssen alles in einen Ordner packen?
Ich bin kein Fan von Unordnung in Verzeichnissen, viel Qualität zu schreiben sollte nicht nur im Kopf, sondern auch überall in Ordnung sein ...
Ich habe auf Folgendes geachtet: https: //www.mql5.com/ru/forum/1111/page1297#comment_1382986
Aber es wurde nichts geändert, so dass ::EnumToString in Vorlagen in vielen Fällen nutzlos ist
Hallo von fxsaber:
Die Entnahme eines Elements nach Index aus einem einfachen Array sollte also eine sehr schnelle Operation sein, nicht wahr?
Projekte weiter erforschen und über folgende Punkte stolpern
#resource "\\Experts\\[Project 2018]\\Expert Name\\Resources\\img\\open_buy.bmp"
resource name is too long '\Experts\[Project 2018]\Expert Name\Resources\img\open_buy.bmp' CPanel.mqh 6 1
Warum brauchen wir Projekte, wenn wir begrenzt sind?
Ein Projekt ist PROJECT!!!!!, das 1000 Bilder, Sounds, Hilfedateien haben könnte, und wir müssen alles in einen Ordner packen?
Ich bin kein Fan von Unordnung in Verzeichnissen, um viel Qualität zu schreiben, muss nicht nur im Kopf, sondern auch überall Ordnung sein ...
Hallo von fxsaber:
Der obige Code basiert auf einem Compiler-Fehler
Ergebnis: 1... und warum nicht 2?
Weil C++ beim Kompilieren einen Fehler meldet, weil beide Funktionen offensichtlich passen und außerdem die aktuelle Reihenfolge in MQL einen expliziten Aufruf von Funktion (2) gar nicht zulässt
Wenn dieser Fehler behoben wird, ist der betreffende Code größtenteils unbrauchbar.
Kompilierungsfehler: Fehler bei der Baumoptimierung
Wir werden teilweise Objekte korrigieren, die zur Kompilierzeit eingebunden werden und nicht als benanntes Objekt in den Code gelangen.
In den Produktbeschreibungen ist nur sehr wenig Platz vorhanden.
3600 Zeichen sind zu wenig für große und seriöse Programme.
Ich denke, viele Menschen werden mir zustimmen.
Für die Beschreibung von Programmen benötigen Sie nicht weniger als 5000 bis 10000 Zeichen. Oder zumindest eine Registerkarte mit dem Namen der Programmeinstellungen
Ein Moderator kann jederzeit darum bitten, das Wasser zu entfernen.
Jetzt schreibe ich eine Programmbeschreibung, ich habe alle 3600 Zeichen nur für die Beschreibung der Einstellungen verwendet und nicht einmal die Hälfte der Funktionen beschrieben...