class B;
class A
{
protected:
int i;
public:
voidoperator =( const B* Value )
{
this.i = Value.i; // 'i' - protected member access error// А так можно!this.i = ((A*)Value).i; // и нет ошибки: cannot convert from const pointer to nonconst pointer
}
};
class B : public A {};
Ich dachte, die Situation wäre in beiden Fällen die gleiche. Aber nein!
wurde bereits behoben, bitte warten Sie auf den neuen Build.
Wir müssen sehen, wie genau es behoben ist, weil in einem ähnlichen Fall der Microsoft-Compiler aus einem Grund verlangt, die Implementierung der Methode (in diesem Fall Operator =) außerhalb der Klasse zu nehmen
Dies scheint das falsche Verhalten für die Sprache zu sein, da es die Möglichkeiten einschränkt.
struct A {};
class B
{
public:
const A a;
B( const A &in ) : a(in) // 'a' - constructor not defined
{
}
};
Ich muss ein const-Feld als Struktur definieren. Ich dachte, der Kopieroperator würde funktionieren, aber der Compiler will stattdessen einen Konstruktor, weil die Syntax ähnlich ist. Aber das ist falsch.
TimeTradeServer kann allen möglichen Unsinn zurückgeben. Zum Beispiel ein Wert, der kleiner ist als TimeCurrent. Dies macht die praktische Anwendung völlig zunichte.
Wenn ich die Idee richtig verstehe, muss TimeTradeServer die verstrichene Zeit nach dem Empfang von TimeCurrent berechnen und diese Differenz addieren, sozusagen die zukünftigen TimeCurrent-Werte emulieren.
Nachdem Sie nun den Expert Advisor ausgeführt haben
Ich dachte, die Situation wäre in beiden Fällen die gleiche. Aber nein!
fxsaber:
Wie erkennt man den Namen einer Datei anhand ihres Handles?
Sie können dies nur innerhalb der Klasse A tun. Das scheint mir in Ordnung zu sein.
Fehler
wurde bereits behoben, bitte warten Sie auf den neuen Build.
ошибка
wurde bereits behoben, bitte warten Sie auf den neuen Build.
MetaEditor fügt dem Dateinamen einen Punkt hinzu
Abfolge der Arbeitsschritte:
Infolgedessen lautet der Dateiname Test2..txt statt Test2.txt
Notepad fügt dem Dateinamen keine zusätzlichen Punkte hinzu, wenn alle anderen Dinge gleich sind.fxsaber:
wurde bereits behoben, bitte warten Sie auf den neuen Build.
Wir müssen sehen, wie genau es behoben ist, weil in einem ähnlichen Fall der Microsoft-Compiler aus einem Grund verlangt, die Implementierung der Methode (in diesem Fall Operator =) außerhalb der Klasse zu nehmen
https://www.mql5.com/ru/forum/1111/page2001#comment_5679732
https://www.mql5.com/ru/forum/1111/page2001#comment_5680465
Dies scheint das falsche Verhalten für die Sprache zu sein, da es die Möglichkeiten einschränkt.
Ich muss ein const-Feld als Struktur definieren. Ich dachte, der Kopieroperator würde funktionieren, aber der Compiler will stattdessen einen Konstruktor, weil die Syntax ähnlich ist. Aber das ist falsch.
Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien
Wanzen, Wanzen, Fragen
fxsaber, 2017.05.19 22:35
TimeTradeServer kann allen möglichen Unsinn zurückgeben. Zum Beispiel ein Wert, der kleiner ist als TimeCurrent. Dies macht die praktische Anwendung völlig zunichte.
Wenn ich die Idee richtig verstehe, muss TimeTradeServer die verstrichene Zeit nach dem Empfang von TimeCurrent berechnen und diese Differenz addieren, sozusagen die zukünftigen TimeCurrent-Werte emulieren.
Nachdem Sie nun den Expert Advisor ausgeführt haben
können Sie jeden Unsinn erkennen.
Beachten Sie die Daten.