Fehler, Irrtümer, Fragen - Seite 1619

 
Slawa:

Die Systemfunktion Point() ist eigentlich inlined und wird in einen einfachen Zugriff auf die Variable _Point umgewandelt

Jemand sagte, wenn ich mich recht erinnere, Renat oder Sie, dass es empfohlen wird, Point(), Digits()... zu verwenden. Ist das wahr? Zumindest tue ich das immer, wenn ich die Empfehlung im Hinterkopf habe.
 
Andrey Dik:
Jemand sagte, wenn ich mich recht erinnere, Renat oder Sie, dass es empfohlen wird, Point(), Digits()... zu verwenden. Ist das wahr? Zumindest tue ich das immer, wenn ich mich an die Empfehlung erinnere.

Ja, das ist richtig.

Beim nächsten Mal werde ich Beispiele anführen, die unseren Empfehlungen entsprechen

 

Ein paar Fragen und Wünsche an die Entwickler.

Vor einem Jahr haben wir die Idee diskutiert, den Funktionswert per Referenz zurückzugeben (Anfrage 1292558). Schließlich wurde uns versichert, dass das Problem gelöst sei und die Funktion Ende Herbst (letztes Jahr) erscheinen würde. Aber wir sind immer noch hier. Dürfen wir fragen, warum sie nicht implementiert wurde?

2. wie sieht es mit der Mehrfachvererbung aus? Ich zum Beispiel brauche sie wirklich, zumindest die Doppelvererbung.

3. Das Override-Schlüsselwort für virtuelle Funktionen in abgeleiteten Klassen ist eine absolut notwendige Sache für OOP. Der Compiler kann sie sonst nicht kontrollieren: Wenn Sie irgendwo einen falschen Argumenttyp setzen oder vergessen haben, const zu verwenden, war's das - das ist eine andere Funktion. Wir bekommen auch Fehler, die schwer zu erkennen sind.

4. Wir brauchen die Möglichkeit, den Ghost-Operator zu überladen.

 

Sie müssen auch die Funktionsvorlagen verfeinern. Im Moment sind alle Ihre Typnamen fest mit Funktionsargumenten verdrahtet. Daher können viele Konstruktionen nicht implementiert werden. Zum Beispiel das hier:

template<typename T> 
T  func()  { return T(0); }

void OnStart()
{
  func<int>();
}

Natürlich kann man dies auf eine Art und Weise lösen, indem man Scheinargumente in die Funktion einfügt, aber Sie verstehen, dass dies den Code sehr verwirrt.

 
Alexey Navoykov:

Sie müssen auch die Funktionsvorlagen verfeinern. Im Moment sind alle Ihre Typnamen fest mit Funktionsargumenten verdrahtet. Daher können viele Konstruktionen nicht implementiert werden. Zum Beispiel das hier:

Natürlich kann man dies auf eine Art Krücke lösen, indem man Scheinargumente in die Funktion einfügt, aber Sie verstehen, dass dies den Code sehr verwirrt.

Das ist unser Plan und wir werden ihn umsetzen.
 

Ich möchte auch, dass der Compiler im Protokoll den Typ der Variable angibt, die den Fehler verursacht hat, wenn er einen Fehler innerhalb der Vorlage feststellt, da es sonst sehr schwierig sein kann, ihn zu finden.

Nehmen wir das folgende Codefragment an:

void F(A& a)  {  }
void F(B& a)  {  }


template<typename T> 
void    Func(T& obj)  { F(obj); }   // 'F' - no one of the overloads can be applied to the function call

Wir wissen nicht, welchem Typ T hier entspricht, daher ist es schwer festzustellen, von wo im Programm dieses Muster aufgerufen wurde. Und es kann sehr viele solcher Fragmente geben, auch solche aus anderen Vorlagen. Und wenn der Compiler geschrieben hätte, dass obj zum Beispiel vom Typ C ist, hätten Sie sofort verstanden, wo Sie suchen müssen.

 
Bild 985 nicht bekannter Fehler

Offen, Gestartet: 2016.07.04 06:48, #1507434

Bald ein Monat ....

 
Vladimir Pastushak:
Bild 985 nicht bekannter Fehler

Offen, Gestartet: 2016.07.04 06:48, #1507434

Bald ein Monat ....

Admins und Entwickler gehen nicht übers Wochenende weg, ohne sich zu melden...

 
Hallo zusammen. Ich habe diese Frage schon vor einigen Seiten gestellt, aber ich werde es noch einmal versuchen: Gibt es eine Möglichkeit, sich wieder in mein Konto einzuloggen, wenn die Verbindung zum MT5-Server unterbrochen wird? Die Suche in den Foren hat nichts ergeben.
 
Dmitri Custurov:
Hallo zusammen. Ich habe diese Frage schon vor einigen Seiten gestellt, aber ich versuche es noch einmal: Gibt es eine Möglichkeit, sich wieder in mein Konto einzuloggen, wenn die Verbindung zum MT5-Server unterbrochen wird? Die Suche in den Foren hat nichts ergeben.
Nein, das können Sie nicht. Die Wiederherstellung der Verbindung erfolgt jedoch automatisch, so dass dies nicht erforderlich ist.
Grund der Beschwerde: