Fehler, Irrtümer, Fragen - Seite 1160
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
Hallo Kameraden.
Ich stehe vor einer solchen Herausforderung.
Ich muss ein Demokonto in MT5 eröffnen und mich mit diesem Konto auf meinem Tablet verbinden. Ich habe die MT5-App für Android heruntergeladen und installiert.
Das Problem ist: Ich habe ein Demokonto in MT5, aber ich kann mich auf meinem Tablet nicht mit ihm verbinden. Wenn ich es versuche, erhalte ich die Meldung - Autorisierung fehlgeschlagen.
Ich habe auch versucht, ein Demokonto auf dem Tablet zu erstellen und es dann mit MT5 auf dem Computer zu verbinden, aber auch das hat nicht funktioniert.
Was könnte der Grund dafür sein? Vielleicht habe ich den falschen Server gewählt? Ich habe die Plattform von Alpari Broker heruntergeladen.
Bitte beraten Sie mich über die Lösung.
Was könnte der Grund dafür sein? Habe ich den falschen Server gewählt? Ich habe die Plattformen vom Alpari-Broker heruntergeladen.
Können Sie eine Lösung vorschlagen?
v4.3, benutzerdefinierte Firmware.
Das Hauptfenster ist im Querformat, andere Dialoge (Aufträge) sind im Hochformat. Lästiges, unkontrolliertes Hin- und Herschalten zwischen Hauptfenster und Dialogen.
Wurde dieses Problem mit der offiziellen Firmware behoben? Wenn nicht, experimentieren Sie mit den Bildschirmeinstellungen in der benutzerdefinierten Firmware
Ein Wunsch an die Entwickler. Bitte fügen Sie die Funktion ArrayReserveSize(array) hinzu, um den Wert reserve_size des angegebenen Arrays zu erhalten. Andernfalls gibt es eine Unannehmlichkeit, wenn wir dieses Array an eine Funktion übergeben, die seine Größe ändern kann, aber nichts über seine reserve_size weiß, und das Ergebnis ist eine unnötige Neuzuweisung von Speicher.
Oder wir können es so einrichten, dass, wenn in der Funktion ArrayResize der dritte Parameter -1 angibt (d.h. ArrayResize(array, size, -1)), der vorherige reserve_size-Wert verwendet wird.
Und idealerweise brauchen wir die Funktionen ArrayCapacity und ArraySetCapacity, um die Größe des zugewiesenen Speichers für das Array explizit zu kontrollieren.
Eine Bitte an die Entwickler. Bitte fügen Sie die Funktion ArrayReserveSize(array) hinzu, um den Wert reserve_size des angegebenen Arrays zu erhalten. Andernfalls gibt es eine Unannehmlichkeit, wenn wir dieses Array an eine Funktion übergeben, die seine Größe ändern kann, aber nichts über seine reserve_size weiß, und das Ergebnis ist eine unnötige Neuzuweisung von Speicher.
Alternativ können wir es so einrichten, dass, wenn die Funktion ArrayResize -1 als dritten Parameter angibt (d.h. ArrayResize(array, size, -1)), der vorherige reserve_size-Wert verwendet wird.
Und idealerweise benötigen Sie die Funktionen ArrayCapacity und ArraySetCapacity, um die Größe des zugewiesenen Speichers für das Array explizit zu kontrollieren.
Und was hindert Sie daran, eine Konstante auf diese Weise zu deklarieren?
#define MY_RESERVE_SIZE = 1000
Und was hindert Sie daran, eine Konstante auf diese Weise zu deklarieren?
#define MY_RESERVE_SIZE = 1000
Warum müssen Sie eine Konstante deklarieren? Der Wert kann zur Laufzeit abgeholt werden. Außerdem kann die Funktion universell sein, nicht an Ihr spezifisches Array gebunden, und kann sich in einem separaten Modul/Bibliothek befinden, so dass Ihr Makro dort nicht wirklich relevant ist.
Aber das ist nicht der Punkt. Bislang müssen wir uns damit begnügen: entweder eine zusätzliche Variable zum Speichern des Wertes anlegen oder ihn als separaten Parameter an eine Funktion übergeben. Und das alles ist ein zusätzlicher Tamburintanz, um den es hier geht.
Ein Wunsch an die Entwickler. Bitte fügen Sie die Funktion ArrayReserveSize(array) hinzu, um den Wert reserve_size des angegebenen Arrays zu erhalten. Andernfalls wird es zu Unannehmlichkeiten kommen, wenn wir dieses Array an eine Funktion übergeben, die seine Größe ändern kann, aber nichts über seine reserve_size weiß, und als Ergebnis wird es zu einer unnötigen Neuzuweisung von Speicher kommen.
Oder wir können es so einrichten, dass, wenn in der Funktion ArrayResize der dritte Parameter -1 angibt (d.h. ArrayResize(array, size, -1)), der vorherige reserve_size-Wert verwendet wird.
Und idealerweise brauchen wir die Funktionen ArrayCapacity und ArraySetCapacity, um die Größe des zugewiesenen Speichers für das Array explizit zu kontrollieren.
Für diese Aufgaben gibt es die Standardklasse CArray und ihre Derivate. Die Dienstbindungen müssen auf eine höhere, abstrakte Ebene delegiert werden, was CArray tut.
Die Klasse CArray ist kein Allheilmittel, da MQL keine Klassenmuster unterstützt. Unser Array besteht nicht notwendigerweise aus einfachen Typen, und es ist nicht sehr interessant, für jede neue Klasse in einem Programm eine vollständige Struktur der CArray-Abkömmlinge zu erstellen. Schauen Sie sich einfach an, wie viele Codezeilen die einzelnen CArray-Nachfolgedateien benötigen (ArrayInt.mqh, ArrayDouble.mqh, usw.).
Und wie die Programmstruktur organisiert ist, ist zweitrangig. Der Punkt ist, dass, wenn es einen Parameter gibt, der geändert werden kann (in diesem Fall ist es reserve_size), es möglich sein sollte, ihn zu erhalten.