Cos'è STRUCT_POSITION SPosition[]; ? Se sta creando un'istanza della struttura, perché è un array dinamico? È davvero possibile farlo? Perché?
Vi sarò molto grato per la vostra risposta.
Dichiarare la struttura struct STRUCT_POSITION {\...\ è la creazione di un tipo di dati definito dall'utente. E STRUCT_POSITION SPosition[]; è la dichiarazione di una variabile di tipo utente. Il fatto che la variabile sia un array è indicato dalle parentesi quadre [] Potete dichiarare diverse variabili di tipo personalizzato proprio come qualsiasi altro tipo.
doublea, b[];
STRUCT_POSITIONPos, SPosition[];// при условии, что структура уже создана.
Sto cercando di fare una classe base universale per definire e chiamare sempre un oggetto della stessa classe.
E sto facendo due soluzioni per testare le notizie. Ho una classe base CNewsFilter e due ereditate CNewsFilterLive e CNewsFilterTester. Voglio definire un oggetto CNewsFilter nel mio codice. E selezionerà automaticamente una classe a seconda di quale modalità è in esecuzione. Ma qualcosa non funziona. Ecco una classe base, ho lasciato solo il metodo Init() per esempio.
Durante il debug, non entra mai in una classe ereditata CNewsFilterTester, che dovrebbe entrare secondo la direttiva della classe base, che ho aggiunto alla fine del codice della classe base. __MQL5__ è qui solo come esempio. Come farlo con il tester è un'altra questione. Finora, l'idea stessa non funziona - i metodi della classe ereditata non vengono chiamati. Quando Init() viene chiamato, non va a Init() della classe ereditata - in questo esempio CNewsFilterTester. Aiuto, per favore.
Sto cercando di fare una classe base universale per definire e chiamare sempre un oggetto della stessa classe.
E sto facendo due soluzioni per testare le notizie. Ho una classe base CNewsFilter e due ereditate CNewsFilterLive e CNewsFilterTester. Voglio definire un oggetto CNewsFilter nel mio codice. E selezionerà automaticamente una classe a seconda di quale modalità è in esecuzione. Ma qualcosa non funziona. Ecco una classe base, ho lasciato solo il metodo Init() per esempio.
Una classe ereditata:
E poi lo chiamo nel mio codice EA:
Durante il debug, non entra mai in una classe ereditata CNewsFilterTester, che dovrebbe entrare secondo la direttiva della classe base, che ho aggiunto alla fine del codice della classe base. __MQL5__ è qui solo come esempio. Come farlo con il tester è un'altra questione. Finora, l'idea stessa non funziona - i metodi della classe ereditata non vengono chiamati. Quando Init() viene chiamato, non va a Init() della classe ereditata - in questo esempio CNewsFilterTester. Per favore, aiutatemi.
Revisione del codice completata con errori: Errori rilevati durante la verifica del codice Trading Statistics Real Time Report. https://www.mql5.com/en/code/28074/230766
Ma non capisco la ragione dell'errore di pubblicazione del codice.
Per favore, rispondetemi su questo.
Qual è il problema, almeno dovrebbe essere evidenziato.
Controllo del codice completato con errori: Errori rilevati durante il controllo del codice Trading Statistics Real Time Report. https://www.mql5.com/en/code/28074/230766
Ma non capisco la ragione dell'errore di pubblicazione del codice.
Per favore, rispondetemi su questo.
Qual è il problema, almeno dovrebbe essere evidenziato.
Dov'è la domanda? Quali sono esattamente gli errori? Mi dispiace, tutti i telepati sono in vacanza.
Ciao intenditori!
Ecco il codice:
struct STRUCT_POSITION {\i}
STRUCT_POSITION SPosition[];
Domanda:
Cos'è STRUCT_POSITION SPosition[]; ? Se sta creando un'istanza della struttura, perché è un array dinamico? È davvero possibile farlo? Perché?
Vi sarò molto grato per la vostra risposta.
Dichiarare la struttura struct STRUCT_POSITION {\...\ è la creazione di un tipo di dati definito dall'utente. E STRUCT_POSITION SPosition[]; è la dichiarazione di una variabile di tipo utente. Il fatto che la variabile sia un array è indicato dalle parentesi quadre [] Potete dichiarare diverse variabili di tipo personalizzato proprio come qualsiasi altro tipo.
In questo tipo di voce, variabile,arrayC'è qualche utility (come WatchDog) per riavviare MT5.
Supponiamo che MT5 abbia chiuso a causa di qualche errore. Come posso rintracciare a distanza questo immediatamente e riavviare MT5.
Sto usando MT4bar per MT4. Ho bisogno di qualcosa di simile per MT5.
Buon pomeriggio.
Sto cercando di fare una classe base universale per definire e chiamare sempre un oggetto della stessa classe.
E sto facendo due soluzioni per testare le notizie. Ho una classe base CNewsFilter e due ereditate CNewsFilterLive e CNewsFilterTester. Voglio definire un oggetto CNewsFilter nel mio codice. E selezionerà automaticamente una classe a seconda di quale modalità è in esecuzione. Ma qualcosa non funziona. Ecco una classe base, ho lasciato solo il metodo Init() per esempio.
Una classe ereditata:
E poi lo chiamo nel mio codice EA:
Durante il debug, non entra mai in una classe ereditata CNewsFilterTester, che dovrebbe entrare secondo la direttiva della classe base, che ho aggiunto alla fine del codice della classe base. __MQL5__ è qui solo come esempio. Come farlo con il tester è un'altra questione. Finora, l'idea stessa non funziona - i metodi della classe ereditata non vengono chiamati. Quando Init() viene chiamato, non va a Init() della classe ereditata - in questo esempio CNewsFilterTester. Aiuto, per favore.
Buon pomeriggio.
Sto cercando di fare una classe base universale per definire e chiamare sempre un oggetto della stessa classe.
E sto facendo due soluzioni per testare le notizie. Ho una classe base CNewsFilter e due ereditate CNewsFilterLive e CNewsFilterTester. Voglio definire un oggetto CNewsFilter nel mio codice. E selezionerà automaticamente una classe a seconda di quale modalità è in esecuzione. Ma qualcosa non funziona. Ecco una classe base, ho lasciato solo il metodo Init() per esempio.
Una classe ereditata:
E poi lo chiamo nel mio codice EA:
Durante il debug, non entra mai in una classe ereditata CNewsFilterTester, che dovrebbe entrare secondo la direttiva della classe base, che ho aggiunto alla fine del codice della classe base. __MQL5__ è qui solo come esempio. Come farlo con il tester è un'altra questione. Finora, l'idea stessa non funziona - i metodi della classe ereditata non vengono chiamati. Quando Init() viene chiamato, non va a Init() della classe ereditata - in questo esempio CNewsFilterTester. Per favore, aiutatemi.
Qui
si crea un oggetto di classe base. Di conseguenza - avete una classe base ovunque.
Come scrivere correttamente una condizione:
come questo
o come questo:
??
Come scrivere correttamente una condizione:
come questo
o come questo:
??
Non ha molta importanza. Puoi anche scriverlo in questo modo.
Le operazioni aritmetiche hanno la precedenza su quelle logiche.
Ma se ci sono sia && che || nella condizione, è preferibile separarli con le parentesi per renderlo più facile da capire.
Non è una questione di principio. Puoi anche metterla in questo modo
La priorità dell'aritmetica è superiore a quella della logica.
Ma se la condizione ha sia && che ||, è preferibile dividerla con delle parentesi per renderla più facile da capire.
Grazie per la risposta!
Per quale motivo non posso pubblicare il codice?
Ricevo sempre un messaggio:
Revisione del codice completata con errori:
Errori rilevati durante la verifica del codice Trading Statistics Real Time Report.
https://www.mql5.com/en/code/28074/230766
Ma non capisco la ragione dell'errore di pubblicazione del codice.
Per favore, rispondetemi su questo.
Qual è il problema, almeno dovrebbe essere evidenziato.
Per quale motivo non posso pubblicare il codice?
Ricevo sempre un messaggio:
Controllo del codice completato con errori:
Errori rilevati durante il controllo del codice Trading Statistics Real Time Report.
https://www.mql5.com/en/code/28074/230766
Ma non capisco la ragione dell'errore di pubblicazione del codice.
Per favore, rispondetemi su questo.
Qual è il problema, almeno dovrebbe essere evidenziato.
Dov'è la domanda? Quali sono esattamente gli errori? Mi dispiace, tutti i telepati sono in vacanza.