Stanislav Korotky: Haben Sie in den letzten Builds den Fehler behoben, dass das Ändern und Neukompilieren von EA-Code vom Tester nicht erkannt wird? Ich muss das Terminal schließen und wieder öffnen, um die neue Version von ex5 zu testen. Andernfalls wird die alte Variante getestet.
Ich bearbeite den Expert Advisor und sehe entweder mit STRG+F5 oder direkt im Strategy Tester das entsprechende Ergebnis.
Ein Objekt einer Klasse mit geschlossenem Konstruktor kann nur mit einer speziellen statischen Funktion dieser Klasse erstellt werden.
Obwohl der Compiler derzeit nicht auf den von Ihnen zitierten Code flucht, wird dies in Zukunft definitiv behoben werden.
Die vorgeschlagene statische Methode wird in diesem Fall eine Art Selbstbetrug sein, da sie im Wesentlichen ein Konstruktor ist. Sie müssen sie explizit aufrufen.
Sie können einen Smart Pointer verwenden, um den Destruktor aufzurufen.
Глава 5. Умные указатели Глава 6. Ведущие указатели и дескрипторы Глава 7. Грани и другие мудрые указатели Глава 8. Коллекции, курсоры, итераторы Глава 9. Транзакции и гениальные указатели
Haben Sie in den letzten Builds den Fehler behoben, dass das Ändern und Neukompilieren von EA-Code vom Tester nicht erkannt wird? Ich muss das Terminal schließen und wieder öffnen, um die neue Version von ex5 zu testen. Andernfalls wird die alte Variante getestet.
Ich bearbeite den Expert Advisor und entweder über CTRL+F5 oder direkt im Tester sehe ich entsprechende Ergebnisse.
Strg+F5 ist Debugging, richtig? Mein Problem liegt nicht in der Fehlersuche, sondern in der Durchführung eines einfachen Tests.
Wie erstelle ich ein verstecktes Klassenobjekt mit einem geschlossenen Konstruktor?
So kommt es zu den undichten Stellen.
Es ist nicht klar, wie man in dieser Situation einen Destruktor aufruft. Singleton ist es nicht.
Ein Klassenobjekt mit einem geschlossenen Konstruktor kann nur mit einer speziellen statischen Funktion dieser Klasse erstellt werden.
Obwohl der Compiler derzeit nicht auf den von Ihnen zitierten Code flucht, wird dies in Zukunft definitiv behoben werden.
Sie können einen Smart Pointer verwenden, um den Destruktor aufzurufen.
Der Destruktor muss offen sein.
Ein Objekt einer Klasse mit geschlossenem Konstruktor kann nur mit einer speziellen statischen Funktion dieser Klasse erstellt werden.
Obwohl der Compiler derzeit nicht auf den von Ihnen zitierten Code flucht, wird dies in Zukunft definitiv behoben werden.
Die vorgeschlagene statische Methode wird in diesem Fall eine Art Selbstbetrug sein, da sie im Wesentlichen ein Konstruktor ist. Sie müssen sie explizit aufrufen.
Sie können einen Smart Pointer verwenden, um den Destruktor aufzurufen.
Der Destruktor muss offen sein.
Wenn Sie sicher sind, dass der Konstruktor privat sein soll, gibt es keine andere Möglichkeit.
Ein intelligenter Zeiger ist ein Objekt, das einen einfachen Zeiger enthält und sicherstellt, dass dieser rechtzeitig entfernt wird.
Dies ist die einfachste Option.
Es gibt auch komplexere intelligente Zeiger.
In diesem Buch wird sehr gut über sie geschrieben: https://rsdn.org/res/book/cpp/cpp_real_programmers.xml
was noch fehlt, damit der Code kompiliert werden kann:
diese Variante schreibt 'var' - Strukturmitglied undefiniert
PS. habe den Fehler gefunden ))
int _val = dynamic_cast <CCore *>(_obj.core).var;void* seit welchem Build in der Sprache?
da tauchten die Schnittstellen auf
als die Schnittstellen eintrafen.