Auf Charts (insbesondere EURUSD) mit monatlichem und wöchentlichem Zeitrahmen bewegt sich das Fadenkreuz sehr langsam und folgt dem Cursor - bewegen Sie den Cursor zum Abspielen einfach gleichmäßig diagonal. In anderen Zeiträumen ist es in Ordnung. Eine solche Verzögerung gab es vorher nicht
Alexey Navoykov: Alles scheint korrekt zu sein, denke ich. Wahrscheinlich wird dort der move-Konstruktor aufgerufen, der in MQL durch copy ersetzt wird.
Eine Umwandlung ist wie (A)a1
(A)a1 oder A(a1) ist kein Cast, sondern eine Deklaration eines Typs wie in der Dokumentation. Allerdings ist jetzt etwas mit den Klammern nicht in Ordnung. Für die Sprache wird ein einheitliches Format benötigt.
(A)a1 oder A(a1)Typkonvertierung A a1 ist keine Konvertierung, sondern eine Typdeklaration wie in der Dokumentation. Allerdings ist jetzt etwas mit den Klammern nicht in Ordnung. Es wird ein gemeinsames Format für die Sprache benötigt.
Der Unterschied besteht darin, dass (A)a1 in Pluszeichen die Umwandlung der Objektkopie bedeutet. Und in MQL ist es die Referenzkonvertierung, wodurch ein Kompatibilitätsproblem entstehen kann.
Vor langer Zeit habe ich sie gebeten, eine Umwandlung wie bei Pluszeichen vorzunehmen: (A&)a1, aber jetzt werden sie wahrscheinlich nichts mehr ändern.
Alexey Navoykov: Der Unterschied besteht darin, dass (A)a1 bei Pluszeichen das Einbringen einer Kopie eines Objekts bedeutet. Und bei MQL ist es die Referenzkonvertierung, weshalb es zu Kompatibilitätsproblemen kommen kann.
Ich habe sie schon lange gebeten, eine Klangumwandlung wie in den Pluszeichen vorzunehmen: (A&)a1, aber wahrscheinlich werden sie jetzt nichts mehr ändern.
Nicht si nicht python) etwas dazwischen. Ups, das wusste ich nicht, ich dachte an die Umwandlung des Objekttyps. Wirtschaft).
Alexey Navoykov: Alles scheint korrekt zu sein. Wahrscheinlich wird dort der Move-Konstruktor aufgerufen, der in MQL durch Kopieren ersetzt wird.
Und der Geist ist wie (A)a1
Ich bezweifle, dass das richtig ist, denn, sagen wir mal:
class A {
public:
virtualvoid f() { Print( 1 ); }
};
class B : public A {
public:
virtualvoid g() { ((A)this).f(); }
};
class C : public B {
public:
virtualvoid f() { Print( 3 ); }
};
voidOnStart()
{
B *b = new C;
b.g();
}
class A {
public:
virtualvoid f() { Print( 1 ); }
};
class B : public A {
public:
virtualvoid g() { this.A::f(); } //1
};
class C : public B {
public:
virtualvoid f() { Print( 3 ); }
};
voidOnStart()
{
B *b = new C;
b.g();
}
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Erlauben Sie die Verwendung von Cookies, um sich auf der Website MQL5.com anzumelden.
Bitte aktivieren Sie die notwendige Einstellung in Ihrem Browser, da Sie sich sonst nicht einloggen können.
Sie sind angemeldet. Die Zwei-Faktor-Authentifizierung wurde deaktiviert. Richten Sie sie erneut ein und scannen Sie einen neuen QR-Code oder fahren Sie mit deaktivierter Zwei-Faktor-Authentifizierung fort.
Auf Charts (insbesondere EURUSD) mit monatlichem und wöchentlichem Zeitrahmen bewegt sich das Fadenkreuz sehr langsam und folgt dem Cursor - bewegen Sie den Cursor zum Abspielen einfach gleichmäßig diagonal. In anderen Zeiträumen ist es in Ordnung. Eine solche Verzögerung gab es vorher nicht
Ausführungsfehler:
Ergebnis: 1-2-2-0-0-0
Erwartetes Ergebnis: 1-2-0-0
wie in C++. Außerdem sollte die Syntax einheitlich sein: ein Cast ist ein Cast, kein Konstruktoraufruf
Alles scheint korrekt zu sein, denke ich. Wahrscheinlich wird dort der move-Konstruktor aufgerufen, der in MQL durch copy ersetzt wird.
(A)a1 oder A(a1) ist kein Cast, sondern eine Deklaration eines Typs wie in der Dokumentation. Allerdings ist jetzt etwas mit den Klammern nicht in Ordnung. Für die Sprache wird ein einheitliches Format benötigt.
(A)a1 oder A(a1)Typkonvertierung A a1 ist keine Konvertierung, sondern eine Typdeklaration wie in der Dokumentation. Allerdings ist jetzt etwas mit den Klammern nicht in Ordnung. Es wird ein gemeinsames Format für die Sprache benötigt.
Der Unterschied besteht darin, dass (A)a1 bei Pluszeichen das Einbringen einer Kopie eines Objekts bedeutet. Und bei MQL ist es die Referenzkonvertierung, weshalb es zu Kompatibilitätsproblemen kommen kann.
Nicht si nicht python) etwas dazwischen. Ups, das wusste ich nicht, ich dachte an die Umwandlung des Objekttyps. Wirtschaft).
Alles scheint korrekt zu sein. Wahrscheinlich wird dort der Move-Konstruktor aufgerufen, der in MQL durch Kopieren ersetzt wird.
Ich bezweifle, dass das richtig ist, denn, sagen wir mal:
Das Ergebnis in MQL: 3
und in C++: 1.
Lassen Sie auf jeden Fall Folgendes überprüfen
Ich bezweifle, dass dies richtig ist, denn nehmen wir an:
Das Ergebnis in MQL: 3
und in C++: 1.
Lassen Sie auf jeden Fall Folgendes überprüfen
Ich bezweifle, dass dies richtig ist, denn nehmen wir an:
Das Ergebnis in MQL: 3
und in C++: 1.
Auf jeden Fall sollen sie es überprüfen.
Bei der Interpretation von MQL-Code in C++ wäre ich mir nicht so sicher.
Code für C++ (online: https://onlinegdb.com/Hy1FIj9Qv):
Ich würde nicht so eindeutig sein, wenn ich MQL-Code in C++ interpretiere.
Der Code ist für C++ (online: https://onlinegdb.com/Hy1FIj9Qv):
Und wie schlagen Sie vor, die 3. Version von g_cast in MQL zu schreiben?
Und wie schlagen Sie vor, die 3. Version von g_cast in MQL zu schreiben?
Sie können die Funktion explizit über die Basisklasse aufrufen: