Fehler, Irrtümer, Fragen - Seite 1333

 

Ich frage mich, was das bedeuten würde? Sehr interessant. Vor allem bei einem echten Konto. Ohne irgendetwas zu überprüfen, aktualisierte mein Broker, unten ist das Ergebnis.

MT4-Terminal, b. 845 vor dem Upgrade,
Und nach dem Upgrade auf b. 851

Und so in allen Terminals auf allen Paaren. W XP 32 bit.

Was sollen wir tun? Bis jetzt ein fabelhaftes Vergnügen. Dies ist das erste Mal in der Geschichte von MT4.

Dateien:
22705.png  54 kb
22706.png  32 kb
 
Sergey Kucher:

Ich frage mich, was das bedeuten würde? Sehr interessant. Vor allem bei einem echten Konto. Ohne irgendetwas zu überprüfen, aktualisierte mein Broker, unten ist das Ergebnis.

MT4-Terminal, b. 845 vor dem Upgrade,
Und nach dem Upgrade auf b. 851

Und so in allen Terminals auf allen Paaren. W XP 32 bit.

Was sollen wir tun? Bis jetzt ein fabelhaftes Vergnügen.

Ich brauche mehr Details und Indikatoren, um das Problem zu reproduzieren. Schreiben Sie an servicedesk.

 
Alexander:

Ich brauche mehr Details und Indikatoren, um das Problem zu reproduzieren. Schreiben Sie an servicedesk.

Versuchen Sie, diesen Indikator auf MT4 Build 851 zu installieren, und alles wird klar werden.
Dateien:
OSMA1.mq4  3 kb
 
Sergey Kucher:
Versuchen Sie, diesen Indikator auf MT4 Build 851 zu installieren, und alles wird klar werden.
Siehe
 

Liebe Entwickler!

CCanvas Klasse fehlt eine wichtige Funktionalität - es ist die Dicke der Zeichnung. Dies wirft eine Frage auf - werden Sie diese Funktionalität zur CCanvas-Klasse hinzufügen?

Wenn Sie nicht vorhaben, diese Funktion hinzuzufügen, machen Sie die PixelSet-Methode bitte virtuell, sonst müssen Sie die Hälfte der Klasse durch Vererbung neu schreiben. Und ich halte es für eine schlechte Idee, irgendetwas in den Standardbibliotheksklassen selbst zu ändern, oder sogar für schädlich, denn wenn man das Terminal aktualisiert oder installiert, muss man alles wieder ändern, und man kann sich nach einer Weile nicht mehr an alle Änderungen erinnern.

Hier ist CCanvasNew Klasse als geerbte Klasse. Damit die Klasse richtig funktioniert, müssen Sie eine Änderung an der PixelSet-Methode der CCanvas-Basisklasse vornehmen, d. h. sie virtuell machen.

Die Linie:

void              PixelSet(const int x,const int y,const uint clr);

ersetzen durch:

virtual void      PixelSet(const int x,const int y,const uint clr);
Dateien:
CanvasNew.mqh  5 kb
 

Fehler bei der Kompilierung

#property library
class name {};
class A {
public:
        int name() { Print( __FUNCTION__ ); return 0; }
        void f();
};
void A::f()
{
                name(); //1//нормально - вызывается A::name()
        int i = name(); //2//ошибка при компиляции
}
void OnStart()
{
	A a;
	a.f();
}
Was ist der Unterschied zwischen 1 und 2?
 

Erläuterung der Anwendung #1268334

Notizblock

MetaEditor

 

In der Dokumentation heißt es:

"Globale Variablen bleiben auf dem Client-Terminal für 4 Wochen nach dem letzten Zugriff erhalten und werden dann automatisch gelöscht. Ein Zugriff auf eine globale Variable bedeutet nicht nur das Setzen eines neuen Wertes, sondern auch das Auslesen des Wertes der globalen Variablen".

Ich lasse jeden Tag globale Variablen lesen. Und trotzdem werden sie immer noch zerstört. Ich muss sie jeden Monat neu erstellen. Ich würde mich freuen, wenn Sie diese Unstimmigkeit in der MT4-Dokumentation beheben würden.

 
Igor733:

In der Dokumentation heißt es:

"Globale Variablen bleiben auf dem Client-Terminal für 4 Wochen nach dem letzten Zugriff erhalten und werden dann automatisch gelöscht. Ein Zugriff auf eine globale Variable bedeutet nicht nur das Setzen eines neuen Wertes, sondern auch das Auslesen des Wertes der globalen Variablen" .

Ich lasse jeden Tag globale Variablen lesen. Und trotzdem werden sie immer noch zerstört. Ich muss sie jeden Monat neu erstellen. Ich würde mich freuen, wenn Sie diese Unstimmigkeit in der MT4-Dokumentation beheben würden.

Sind Sie sicher, dass Sie den Begriff "Globale Variable" nicht mit "Globale Variable des Client-Terminals" verwechselt haben?
 

Tapochun:
А Вы точно не перепутали понятие "Глобальная переменная" и "Глобальная переменная клиентского терминала

Ich meinte Terminal-Variablen. Nicht verwirrt. GlobalVariableSet("_LastBalance",MathMax(AccountEquity(),GlobalVariableGet("_LastBalance"))); Wenn Sie eine Variable vom Terminal aus erstellen und sie dann nur im EA lesen, wird sie trotzdem nach einem Monat gelöscht.
Grund der Beschwerde: