Domanda. La dimensione di una classe vuota in MQL è di 16 byte (in un sistema a 64 bit). Perché? 8 byte devono essere occupati dal puntatore alla tabella virtuale (secondo la documentazione, tutte le classi lo hanno in MQL). E i restanti 8 byte sono occupati da cosa?
Colleghi, qualcuno ha incontrato questo problema? Il terminale è stato aggiornato a biuld 1430 questa mattina. E come coincidenza, ieri ho riscritto il mio Expert Advisor per lavorare con i file tramite la libreria standard (prima non aveva completamente successo usando le operazioni standard sui file), ma non l'ho testato - l'ho rimandato a domani mattina. Ed ecco il risultato: l'Expert Advisor non trova un file durante il test - la funzione FileIsExist restituisce sempre false. Non so dove sia il difetto - se è nelle mie modifiche o nell'aggiornamento. Il fatto è che la documentazione dice che il file deve trovarsi nella cartella MQL5/Tester/Files durante i test. Tuttavia, in realtà, il percorso è diverso: ...{Roaming\MetaQuotes\Tester\...qualche cosa esagonale...\Agent-127.0.0.1-3000\MQL5\Files. Cioè almeno c'è un errore nella documentazione. Ma la cosa principale è che quando inizia il test, il file messo lì manualmente viene cancellato dalla cartella specificata, anche se la mia funzione FileIsExist è prescritta in OnInit ed è la prima ad accedere ai file. Quindi ho una domanda: dove dovrebbe essere collocato un file durante i test? E cosa succede?
BlackTomcat: Colleghi, qualcuno ha incontrato questo problema? Il terminale è stato aggiornato a biuld 1430 questa mattina. E come coincidenza, ieri ho riscritto il mio Expert Advisor per lavorare con i file tramite la libreria standard (prima non aveva completamente successo usando le operazioni standard sui file), ma non l'ho testato - l'ho rimandato per domattina. Ed ecco il risultato: l'Expert Advisor non trova un file durante il test - la funzione FileIsExist restituisce sempre false. Non so dove sia la colpa - o nelle mie modifiche o a causa dell'aggiornamento. Il fatto è che la documentazione dice che il file deve trovarsi nella cartella MQL5/Tester/Files durante i test. Tuttavia, in realtà, il percorso è diverso: ...{Roaming\MetaQuotes\Tester\...qualche merda esagonale...\Agent-127.0.0.1-3000\MQL5\Files. Cioè almeno c'è un errore nella documentazione. Ma la cosa principale è che quando inizia il test, il file messo lì manualmente viene cancellato dalla cartella specificata, anche se la mia funzione FileIsExist è prescritta in OnInit ed è la prima ad accedere ai file. Quindi ho una domanda: dove dovrebbe essere collocato un file durante i test? E cosa succede?
Bene, il problema è stato aggirato usando il flag FILE_COMMON. Il file si troverà nella cartella ...{Roaming\MetaQuotes\Terminal\Common\Files. Durante i test non viene cancellato da lì e può essere letto normalmente.
Domanda: Come trovo i miei messaggi nel forum MQL4? Circa due anni fa è stato creato un thread con codice allegato e questo codice è ora diventato interessante, ma la ricerca nel forum è silenziosa. Se vado nelle mie pubblicazioni, questo argomento non c'è. (cancellato?)
Come faccio a sapere se una macro è mai stata usata o no?
come questo:
#ifndef __MY_MACROS__ // если макрос не использован#define __MY_MACROS__
//----------------------------------------// тут ваш код использующий макрос//----------------------------------------#endif // __MY_MACROS__
#define MACROS(A) A
void Func()
{
MACROS(A) // Если закомментировать, то макрос ни разу не использовался
}
// Вот здесь хотелось бы понять, использовался ли хоть раз макрос или нет.
Consenti l'uso dei cookie per accedere al sito MQL5.com.
Abilita le impostazioni necessarie nel browser, altrimenti non sarà possibile accedere.
Hai effettuato l'accesso. L'autenticazione a due fattori è stata disattivata. Configurala di nuovo e scansiona un nuovo codice QR, oppure continua con l'autenticazione a due fattori disattivata.
Colleghi, qualcuno ha incontrato questo problema? Il terminale è stato aggiornato a biuld 1430 questa mattina. E come coincidenza, ieri ho riscritto il mio Expert Advisor per lavorare con i file tramite la libreria standard (prima non aveva completamente successo usando le operazioni standard sui file), ma non l'ho testato - l'ho rimandato per domattina. Ed ecco il risultato: l'Expert Advisor non trova un file durante il test - la funzione FileIsExist restituisce sempre false. Non so dove sia la colpa - o nelle mie modifiche o a causa dell'aggiornamento. Il fatto è che la documentazione dice che il file deve trovarsi nella cartella MQL5/Tester/Files durante i test. Tuttavia, in realtà, il percorso è diverso: ...{Roaming\MetaQuotes\Tester\...qualche merda esagonale...\Agent-127.0.0.1-3000\MQL5\Files. Cioè almeno c'è un errore nella documentazione. Ma la cosa principale è che quando inizia il test, il file messo lì manualmente viene cancellato dalla cartella specificata, anche se la mia funzione FileIsExist è prescritta in OnInit ed è la prima ad accedere ai file. Quindi ho una domanda: dove dovrebbe essere collocato un file durante i test? E cosa succede?
Il file si troverà nella cartella ...{Roaming\MetaQuotes\Terminal\Common\Files. Durante i test non viene cancellato da lì e può essere letto normalmente.
Domanda: Come trovo i miei messaggi nel forum MQL4? Circa due anni fa è stato creato un thread con codice allegato e questo codice è ora diventato interessante, ma la ricerca nel forum è silenziosa. Se vado nelle mie pubblicazioni, questo argomento non c'è. (cancellato?)
Come faccio a sapere se una macro è mai stata usata o no?
Come faccio a sapere se una macro è mai stata usata o no?
come questo:
come questo:
Mi riferivo a qualcos'altro.
Il più semplice è un contatore di chiamate macro in una variabile globale, riscritta dalla macro stessa.