Fehler, Irrtümer, Fragen - Seite 1500

 
coderex:

Bevor man mit einem Diagramm arbeiten kann, muss es mit der Methode Attach an ein Objekt der Klasse angehängt werden!!! Wenn Sie nicht mit dem aktuellen Diagramm ( 0 ) arbeiten wollen, implementieren Sie diese Prüfung und verbieten Sie die Verwendung des aktuellen Diagramms in Ihrer Arbeit.

Und was bedeutet es, mit dem Diagramm zu arbeiten und es nicht mit der Detach-Methode zu schließen, um es zu verlassen? Ist es wirklich schwierig, eine Zeile in den Destruktor Ihrer Klassen oder in OnDeinit zu schreiben? Sie müssen die Arbeit mit Objekten streng kontrollieren, dann werden Sie Fehler vermeiden.

Ich kann Ihnen denselben Rat geben. Bevor Sie mit einem Diagramm arbeiten, müssen Sie es mit der Methode Attach() an ein Objekt Ihrer Klasse anhängen. Wenn Sie mit dem aktuellen Diagramm arbeiten möchten, verwenden Sie die Methode Attach( void ). Wenn Sie die ID des Diagramms zuvor erhalten haben, verwenden Sie die Methode Attach( chart ). Wenn Sie mit einem neuen Diagramm arbeiten wollen, verwenden Sie die Methode Open(). Verwenden Sie diese Methode nur, um ein neues Diagramm zu öffnen und damit zu arbeiten.

Wenn Sie mit dem Diagramm arbeiten wollen, ohne es zu schließen, müssen Sie vergessen, die Methode Detach() aufzurufen. Zusammen mit dem Fehler der Öffnung - das Ergebnis ist die Schließung der Karte eines anderen. Nicht gut!

Hier schreiben Sie interessant. Wenn Ihnen etwas nicht gefällt, machen Sie dort einen Haken, fügen Sie es dort hinzu und lassen Sie uns so leben, wie wir es früher getan haben. Ich denke, ich kann meine eigene Bibliothek schreiben, genau wie Sie. Warum, wenn die Arbeit bereits für uns erledigt ist? Verbessern wir das, was wir haben, anstatt Krücken zu erfinden. Es ist gut, dass die Entwickler schnell auf mich gehört haben und die notwendigen Änderungen vorgenommen haben.

 

Wie könnten Sie nicht verstehen, dass Sie die Entwickler auffordern, die Fähigkeit, mit dem aktuellen Zeitplan zu arbeiten, zu vernichten. Wenn Sie den Prozess des Erstellens, Arbeitens und Löschens von Objekten nicht richtig kontrollieren wollen, überladen Sie die Open-Methode selbst, wie es die Entwickler vorgeschlagen haben.

Wenn Sie ein Klassenobjekt erstellen, werden alle seine Felder mit Nullen initialisiert. Das ist kein reines C++, bei dem Sie gezwungen sind, alles nach der Erstellung auf Null zu setzen.

Sie erstellen ein Klassenobjekt, arbeiten damit und werfen das zu löschende Objekt einfach weg, ohne das Diagramm vom Klassenobjekt zu lösen. Und die Entwickler werden die Open-Methode ändern, was die Frage aufwirft, warum die überladene Attach-Methode überhaupt geschaffen wurde.

Entwickler sollten sich überlegen, ob sie mit ihrer eigenen Ideologie der Arbeit mit der Standardbibliothek brechen wollen, bevor sie diese Änderungen vornehmen.

 
coderex:

Wie könnten Sie nicht verstehen, dass Sie die Entwickler auffordern, die Fähigkeit, mit dem aktuellen Zeitplan zu arbeiten, zu vernichten. Wenn Sie den Prozess des Erstellens, Arbeitens und Löschens von Objekten nicht richtig kontrollieren wollen, überladen Sie die Open-Methode selbst, wie es die Entwickler vorgeschlagen haben.

Wenn Sie ein Klassenobjekt erstellen, werden alle seine Felder mit Nullen initialisiert. Das ist kein reines C++, bei dem Sie gezwungen sind, nach der Erstellung alles auf Null zu setzen.

Und Sie erstellen ein Klassenobjekt, arbeiten damit und werfen das zu löschende Objekt einfach weg, ohne das Diagramm vom Klassenobjekt zu lösen. Und die Entwickler werden die Open-Methode ändern, was die Frage aufwirft, warum die überladene Attach-Methode überhaupt erstellt wurde.

Entwickler sollten sich überlegen, ob sie mit ihrer eigenen Ideologie der Arbeit mit der Standardbibliothek brechen wollen, bevor sie diese Änderungen vornehmen.

Lassen Sie uns anhand von Beispielen kommunizieren. Ihre unbegründeten Anschuldigungen werden langsam lästig. Und wie kommen Sie darauf, dass Ihr, wie ich finde, grundlegend falscher Ansatz richtig ist?

Und nachdem Sie ein Klassenobjekt erstellt und damit gearbeitet haben, werfen Sie das Objekt einfach weg, ohne das Diagramm von dem Objekt der Klasse zu trennen. Und die Entwickler werden nun die Open-Methode ändern, was die Frage aufwirft, warum die überladene Attach-Methode überhaupt erstellt wurde.

Die Methode Detach() ist ein eigenes Thema. Was wir jetzt besprechen ist, dass Open() die Arbeit mit dem aktuellen Chart implizit erzwingen kann! Hierfür gibt es die Methode Attach(). Es ist nicht klar, wer und was durch die Anpassung der Methode Open() getötet wird...
 
Slawa:

Wie kann man die GMT ändern? "Es ist ein Denkmal!" (c) GMT ist Greenwich Mean Time

Hahaha...

Du bist so witzig.

 
Alexey Kozitsyn:

Lassen Sie uns anhand von Beispielen kommunizieren. Ihre unbegründeten Anschuldigungen fangen an, uns zu langweilen. Und wie kommen Sie darauf, dass Ihr, wie ich finde, grundlegend falscher Ansatz richtig ist?

Die Detach()-Methode ist ein separates Thema für die Diskussion. Was wir jetzt besprechen ist, dass Open() die Arbeit mit dem aktuellen Chart implizit erzwingen kann! Hierfür gibt es die Methode Attach(). Es ist nicht klar, wer und was bei der Anpassung der Methode Open() getötet wird...

Denken Sie, was Sie wollen, aber diese Zeilen des Codes in der vorgeschlagenen Aktualisierung der Open:

   if(m_chart_id==0)
      m_chart_id=-1;

ändert das Feldm_chart_id, das die Diagramm-ID enthält, auf -1, wenn das Diagramm aktuell ist, d.h. ( 0 ), was für unbegründete Anschuldigungen kann es geben, und niemand beschuldigt Sie, Sie sind verwirrt. Wenn Sie nicht nach der Ideologie der Standardbibliothek schreiben wollen, überladen Sie die Methoden, von denen Sie glauben, dass sie nicht so funktionieren, wie Sie es wollen. Ich verstehe, wenn die Klasse in einen gemeinsamen Mechanismus integriert wurde, wie z.B. die Familie der Control Panels, wo einige Methoden nicht überladen werden können, weil sie Felder im privaten Bereich der Klasse enthalten. Aber hier ist die Klasse einfach, Sie können ihr Verhalten selbst ändern. Wenn die Entwickler jedoch die Open-Methode wie oben beschrieben ändern, ist die Attach()-Methode nicht eindeutig, da es sich um das aktuelle Diagramm (0) handelt. Mit anderen Worten, der nächste Aufruf von Open wirdm_chart_id == -1 ergeben.

Für mich ist das kein Problem, ich füge einfach eine Zeile in OnInit ein, die die ID des aktuellen Diagramms abruft und das Diagramm mit der Methode Attach(long chart) an das Klassenobjekt bindet.

 
Gibt es eine Möglichkeit, die Variablen aus der ex4-Datei zu kopieren?
 
Vasyl Nosal:
Gibt es eine Möglichkeit, die Variablen aus der ex4-Datei zu kopieren?
Speichern Sie die eingestellte Datei - ich mache das immer
 
Vladislav Andruschenko:
Set-Datei speichern - ich mache das immer

:))

Das können Sie nicht.

In mq4-Dateien können Sie.

(Indikator)

 
Vasyl Nosal:

:))

Das können Sie nicht.

In mq4-Dateien können Sie.

(Indikator)

Vorlage? Dort gibt es keinen Datentyp.

 
dann nur durch Schablonenbildung