Errori, bug, domande - pagina 2296
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Non c'è nessun problema... c'è un errore. Inoltre non capisco perché cerchi di tirare fuori la spiegazione dalla tua testa. La stampa di default ha la seguente firma:
E può anche scontrarsi con altre funzioni (se necessario)
La firma di stampa è fuori dalla portata del linguaggio MQL5. Se MQL5 proibisce del tutto il sovraccarico di stampa, non sarà un bug.
Spero che questo "bug" non vi impedisca di creare TS e non richieda stampelle di scrittura.
Ho misurato le prestazioni del Tester. Per fare questo, ho aperto e chiuso una posizione su ogni tick. Ho misurato il tempo di esecuzione di 100 tick. L'ho fatto passare attraverso 100.000 ticks. Ho misurato un totale di 1000 zecche. Ho questo grafico
Ci sono picchi di rallentamento a distanze quasi uguali tra loro. L'ho misurato in modalità Ottimizzazione. Se ignoro questi picchi, la prestazione del tester varia del 25% invece del valore costante. Forse sono di nuovo i trucchi di misurazione della velocità di Windows.
ZZZ Lo stesso codice è in esecuzione su MT4
In media, MT4 Tester impiega 1,5-2 volte meno tempo per elaborare un tick rispetto a MT5.
Possibilmente le impennate attraverso l'uso di un algoritmo di ottimizzazione genetica.
In media, MT4-Tester impiega 1,5-2 volte meno tempo per elaborare un tick rispetto a MT5.
Possibilmente le impennate attraverso l'uso di un algoritmo di ottimizzazione genetica.
Nessun GA. Ottimizzazione da due passaggi su un agente.
E questa è già pura manipolazione e inganno.
Il codice sorgente è a posto.
In un caso un avvertimento, nell'altro un errore
Qual è la differenza fondamentale? In C++, per esempio, c'è un errore in entrambi i casi
Sto chiedendo aiuto a persone competenti per capire il problema dei puntatori alle istanze di classe. Non lo capisco.
Ecco un esempio di script:
Quando lo si esegue abbiamo, come previsto:
se un'istanza di una classe è dichiarata come:
A *a= new A;
poi all'esecuzione abbiamo:
cioè il distruttore non viene nemmeno avviato e quindi la memoria non viene liberata.
Ma se un'istanza di una classe è dichiarata come:
A a= new A;
il costruttore viene lanciato due volte, il distruttore - una volta, ma la memoria non viene liberata e abbiamo il tipo di puntatore dell'oggettoPOINTER_AUTOMATIC, anche se doveva esserePOINTER_DYNAMIC
Come eseguire sempre il distruttore ed eseguire correttamente la cancellazione
Как добиться всегда выполнения деструктора и правильного выполнения delete.
Vedi da C++ l'argomento dei puntatori intelligenti e adattati per MQL(https://habr.com/post/140222/).
Forse c'è qualcosa in kodobase...
Vedi da C++ l'argomento dei puntatori intelligenti e adattati per MQL(https://habr.com/post/140222/).
Forse c'è qualcosa in kodobase...
Grazie, ma non ho visto nessuna risposta alle mie domande.
Non capisco perché il distruttore non viene chiamato quandoA *a= new A;
Grazie, ma non ho visto nessuna risposta alle mie domande.
Non capisco perché il distruttore non viene chiamato quandoA *a= new A;
Risultato:
1:PUNTATORE_AUTOMATICO
1:PUNTATORE_DINAMICO
2:PUNTATORE_DINAMICO
2:PUNTATORE_AUTOMATICO
Grazie, ma non ho visto nessuna risposta alle mie domande.
Non capisco perché il distruttore non viene chiamato quandoA *a= new A;
Creare con new e cancellare con delete