Ho scritto questa funzione, e di solito la uso in stato di ottimizzazione che può fare una vera differenza se si vuole chiamarla un milione di volte. Penso che questo sia il più veloce possibile per ottenere la nuova barra, e sembra pulito:
Ho scritto questa funzione, e di solito la uso in stato di ottimizzazione che può fare una vera differenza se si vuole chiamarla un milione di volte. Penso che questo sia il più veloce possibile per ottenere la nuova barra, e sembra pulito:
In "C" e "C++", la parola chiave "inline" raccomanderebbe al compilatore di usare l'espansione in linea per l'ottimizzazione.
Tuttavia, in MQL, tale caratteristica non è documentata, anche se il compilatore la accetta e non dà un errore durante la compilazione. Potrebbe semplicemente essere tollerata ma non avere alcun effetto.
12. MQL5: Aggiunto il supporto per gli specificatori inline, __inline e __forceinline durante l'analisi del codice. La presenza degli specificatori nel codice non causa errori e non influenza la compilazione. Al momento, questa caratteristica semplifica il trasferimento del codice С++ a MQL5. Trovate maggiori informazioni sugli specificatori in MSDN.
Alain Verleyen: 12. MQL5: Added support for the inline, __inline and __forceinline specifiers when parsing code. The presence of the specifiers in the code causes no errors and does not affect the compilation. At the moment, this feature simplifies transferring С++ code to MQL5. Find more information about specifiers in MSDN.
Grazie per l'informazione! Peccato che non l'abbiano incluso nella documentazione, dato che non ho trovato alcuna menzione di ciò né nella versione online né nel file di aiuto di MetaEditor.
Io uso questo...
Grazie amico
Io uso questo...
Ho avuto molti problemi usando il tempo come variabile e stavo cercando un modo per usare le barre variabili
grazie, lavoro!
Perché non usare semplicemente qualcosa come questo:
datetime lastTime[1];
if (CopyTime(_Symbol,_Period,0,1,lastTime)==1 && prevTime!=lastTime[0])
{
prevTime=lastTime[0];
// ...
}
grazie fratello!
Perché non usare semplicemente qualcosa come questo:
datetime lastTime[1];
if (CopyTime(_Symbol,_Period,0,1,lastTime)==1 && prevTime!=lastTime[0])
{
prevTime=lastTime[0];
// ...
}
Perfetto.
Stavo cercando la stessa cosa.
Dio vi benedica
Grazie Leonard, davvero utile.
Ho notato alcuni problemi quando lavoro con iHigh, iLow e iClose direttamente dopo aver aggiunto un rapido Sleep(10000) dopo la chiamata.
Ho scritto questa funzione, e di solito la uso in stato di ottimizzazione che può fare una vera differenza se si vuole chiamarla un milione di volte. Penso che questo sia il più veloce possibile per ottenere la nuova barra, e sembra pulito:
Ho scritto questa funzione, e di solito la uso in stato di ottimizzazione che può fare una vera differenza se si vuole chiamarla un milione di volte. Penso che questo sia il più veloce possibile per ottenere la nuova barra, e sembra pulito:
Grazie!
Domanda: cosa significa "Inline"?
In "C" e "C++", la parola chiave "inline" raccomanderebbe al compilatore di usare l'espansione in linea per l'ottimizzazione.
Tuttavia, in MQL, tale caratteristica non è documentata, anche se il compilatore la accetta e non dà un errore durante la compilazione. Potrebbe semplicemente essere tollerata ma non avere alcun effetto.
Grazie!
Domanda: cosa significa "Inline"?
12. MQL5: Aggiunto il supporto per gli specificatori inline, __inline e __forceinline durante l'analisi del codice. La presenza degli specificatori nel codice non causa errori e non influenza la compilazione. Al momento, questa caratteristica semplifica il trasferimento del codice С++ a MQL5.
Trovate maggiori informazioni sugli specificatori in MSDN.