Errori, bug, domande - pagina 2585
![MQL5 - Linguaggio delle strategie di trading integrato nel client terminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Dove e a che punto si cancella la maniglia dell'indicatore?
Non appena non è più necessario. E prima di OnDeinit.
Non appena non era più necessario. E prima di OnDeinit.
Questo è il punto, appena non serve più, lo cancello. Come posso dire a un programma che viene rimosso se OnDeinit non funziona?
Questo è il punto, appena non serve più, lo cancello. Come può un programma sapere che viene rimosso se OnDeinit non funziona?
Dammi il compito vero e proprio.
Il vero compito è dirmi il vero compito.
Il vero problema è stato facilmente risolto evitando semplicemente di ottenere il proprio manico, dato che non c'è bisogno del proprio manico:
Sto solo pensando: e se avessi bisogno del mio manico...
ci sono stati tali problemi, ma non li ricordo
Stavo pensando: e se tu avessi bisogno di un manico tutto tuo...
C'erano questi compiti, ma non li ricordo.
Init_Sync ha una tale necessità.
palo 25786
Con il metodo della randomizzazione, ho definito una normale copia nella stringa di mql, una stringa di tipo const wchar_t*.
Con questo parametro nella funzione memcpy, mql ha iniziato a ricevere anche le stringhe, e senza perdite.
Cioè, invece di 2 byte sizeof(wchar_t), ha usato 3 byte.
Ma è interessante notare che la stringa letterale auto-descritta viene correttamente passata con sizeof(wchar_t).La stringa mql ha iniziato a prendere correttamente un puntatore alla stringa const wchar_t *.
Va bene?
A caso, ho definito la normale copia della stringa di mql, una stringa di tipo const wchar_t*
Con tale parametro nella funzione memcpy, mql ha iniziato a ricevere anche stringhe, e senza perdite.
Cioè, invece di 2 byte sizeof(wchar_t), ha usato 3 byte.
Ma è interessante notare che la stringa letterale auto-scritta viene correttamente passata con sizeof(wchar_t).La stringa mql ha iniziato a prendere correttamente un puntatore alla stringa const wchar_t*
È normale?
Perché si usa memcpy invece del normale wcscpy?
Perché usare memcpy invece del normale wcscpy?
memcpy è stato usato come mostrato nell'articolo di esempiodi Renate.
L'uso di altre funzioni di copia causa gli stessi problemi.
Il comportamento con queste funzioni è descritto in questo post e inquesto
Sono state provate tutte le possibili funzioni di copia.
void OnInit()
{
datetime first_date;
SeriesInfoInteger(_Symbol,_Period,SERIES_FIRSTDATE,first_date);
int bars=Bars(_Symbol,_Period);
Print("First date ",first_date," - ",bars," bars");
datetime time[];
CopyTime(_Symbol,PERIOD_M15,D'2015.01.01',100000,time);
Print("rows=",100000," =? ",ArraySize(time));
Print("Load data from ",D'2015.01.01'," =? ",time[0]," to ",time[ArraySize(time)-1],", rows=",100000," =? ",ArraySize(time));
//---
}
void OnTick(){
}
legge circa 37.000 bar. Quando viene eseguito nel terminale legge tutte le 100000 barre.
Provato ad aggiungere il codice di paginazione dal server a https://www.mql5.com/ru/docs/series/timeseries_access#synchronized
Ma non cambia nulla.
Come leggere queste 100000 barre nel tester?
Come si calcolano queste 100.000 barre?
Cominciate a leggere l'articolo https://www.mql5.com/ru/articles/239