Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Wenn die Anzahl der Objekte vorher bekannt ist und während des Programmablaufs konstant bleibt, wird new nicht benötigt. In allen anderen Fällen brauchen Sie neue.
Nein, hier ist mein Beispielhttps://www.mql5.com/ru/forum/160683/page861#comment_11840254
es ist praktisch, Parameter an den Konstruktor zu übergeben, und wenn der Benutzer die Einstellungen ändert, ist es schneller, die Klasse in OnDeinit() zu beenden und sie dann mit den neuen Parametern in OnInit() zu erstellen
;)
nein, hier ist mein Beispielhttps://www.mql5.com/ru/forum/160683/page861#comment_11840254
es ist praktisch, Parameter an den Konstruktor zu übergeben, und wenn der Benutzer die Einstellungen ändert, ist es schneller, die Klasse in OnDeinit() zu beenden und sie dann mit den neuen Parametern in OnInit() zu erstellen
;)
Parameter können auch ohne new an den Konstruktor übergeben werden.
Parameter können ohne new an den Konstruktor übergeben werden.
Wie werden Sie also Klassenfelder ändern (vom Benutzer geänderte EA-Einstellungen)? - Werden Sie eine weitere Methode schreiben? Ich dachte auf der letzten Seite, Sie würden für"eine weitereVariable für einen Zeiger" kämpfen."Und hier haben Sie eine ganze Methode!
;)
und? und wie werden Sie Klassenfelder ändern (vom Benutzer geänderte EA-Einstellungen)? - Werden Sie eine weitere Methode schreiben? Ich dachte auf der letzten Seite, Sie würden für"eine weitereVariable für den Zeiger" kämpfen.", mit dem Sie zu kämpfen hatten, und hier ist eine ganze Methode!
;)
auf keinen Fall ;)
die EA-Einstellungen ändern
auf keinen Fall ;)
EA-Einstellungen ändern
Cooler Überfall.
Ich würde es jedoch vorziehen, eine Methode zum Ändern der Parameter hinzuzufügen, aber nicht new nur wegen der Parameter zu verwenden.Cooler Überfall.
Nichtsdestotrotz ziehe ich es vor, eine Methode zum Ändern von Parametern hinzuzufügen, aber verwende new nicht nur wegen der Parameter.ist es ein Aberglaube, nichts Neues zu benutzen? )))
Imho, wenn es praktisch ist, muss man es benutzen! - Ihr Beispiel wird in 2 Klicks mit new umgeschrieben und alles wird korrekt funktionieren und die Situation behandeln, wenn der Benutzer die Einstellungen ändert
ist es Aberglaube, nichts Neues zu benutzen? )))
Imho, wenn es praktisch ist, muss man es benutzen! - Ihr Beispiel wird in 2 Klicks neu schreiben mit neuen und alles wird richtig funktionieren und behandeln Situation, wenn der Benutzer Einstellungen ändert
Das ist kein Aberglaube, sondern einfach Faulheit, historisch bedingt, durch die Umstände. Sie müssen delete schreiben und es in Deinit() tun. Die Funktion Deinit() war jedoch nicht standardmäßig in der Vorlage enthalten. Jetzt schaue ich nach - die EA-Vorlage hat Deinit(), aber sie war vorher nicht da.
Das ist kein Aberglaube, sondern einfach Faulheit, historisch bedingt, durch die Umstände. Wir sollten delete schreiben und es in Deinit() tun. Die Funktion Deinit() war jedoch standardmäßig nicht in der Vorlage enthalten. Ich schaue jetzt nach - es gibt Deinit() in der EA-Vorlage, aber es war vorher nicht da.
Schreiben Sie nicht löschen - alles wird richtig funktionieren, diese Sünde (ich meine Aberglaube) ) ) übernimmt das Terminal und murmelt in das Protokoll "48 Byte ausgelaufener Speicher", "2 Objekte vom Typ CX übrig" und "ungelöschte Objekte übrig".
HH: in der Indikatorvorlage gibt es kein Deinit() - das ist ärgerlich
schreiben Sie nicht löschen - alles wird richtig funktionieren, diese Sünde (ich meine Aberglaube)) ) übernimmt das Terminal und murmelt in sein Protokoll "48 Bytes an ausgelaufenem Speicher", dann "2 Objekte des Typs CX übrig" und "ungelöschte Objekte übrig".
SZY: in der Vorlage für die Erstellung des Indikators gibt es kein Deinit() - es belastet
Ohne Löschen funktioniert es zwar, aber es ist nutzlos. Aber kümmert sich das Terminal um dieses Problem? Es meldet nur Speicherlecks, widmet sich aber nicht denselben Objekten.