MQL5 Der Compiler unterscheidet nicht zwischen einer Klasse und einem Zeiger auf sie - Seite 8

 

Ich verstehe nicht, warum das implizite Kopieren für Objekttypen nicht verboten wird? Wozu soll das gut sein? Objekte, bei denen es sich tatsächlich um Objekte handelt und nicht um OOP-verkleidete Strukturen, die bequem per Verweis weitergegeben werden können, haben ohnehin keine Logik, die nur Felder enthält. Das heißt, das Kopieren ohne explizites Überladen des =-Operators in der Klasse ist einfach nicht notwendig.

 
Ilya Malev:

Wo ist*?

In MQL
 

Hier ist S. Willst du ein PL?

Ilja.

 
Alexey Navoykov:
In MQL

Und was bedeutet das für die MMS? Können Sie mir ein einfaches Beispiel zeigen?

 
Alexey Navoykov:
Warum sollte es nicht funktionieren? Es gibt * und & Operatoren für die Konvertierung in das, was benötigt wird.

Bei mir hat es nicht funktioniert (falls es verboten ist)

class A
{
public:
  int i;
  
  void operator =( const A &Object )
  {
    this = Object;
  }
};

void OnStart()
{
  A a1;
  A* a2 = new A;
  A* b = &a1;
  
  a2 = a1; // Хочу копирование объекта
  a2 = b;  // Хочу копирование объекта  
}
 
Ilya Malev:

Und was bedeutet das für die MMS? Können Sie mir das anhand eines einfachen Beispiels zeigen?

fxsaber:

Ich könnte es nicht (falls sie es verbieten)

Scheiße, Leute, was macht ihr da?

A a;
A *p;
*p = a; 
 
Alexey Navoykov:

Scheiße, Leute, was macht ihr da?

Bereich der Sichtbarkeit...

 
Alexey Navoykov:

Scheiße, Leute, was macht ihr da?

Hundert plus für dich, Mann. Entweder wurde ich von einem Dämon ausgetrickst, als ich das schon einmal versucht habe, oder eine der letzten Versionen hat es hinzugefügt.

 
Ilya Malev:

Hundert plus für dich, Mann. Entweder wurde ich von einem Dämon ausgetrickst, als ich das schon einmal versucht habe, oder eine der letzten Builds hat es hinzugefügt.

Offensichtlich die erste ) Denn diese Funktionalität ist seit etwa 3 Jahren in MQL verfügbar
 

Ich war mir sicher, dass es so etwas in MQL nicht gibt! Ich frage mich, woher solche Beine in meinem Kopf kommen... Ich bin nicht der Einzige.

Ich frage mich, ob es in der QB oder der Dokumentation auch nur ein einziges Beispiel dafür gibt? Hat nicht stumpfsinnig bemerkt....