Errori, bug, domande - pagina 217

 
Interesting:

Questo è molto probabile perché ArrayInitialize() è destinato a riempire solo array di un certo tipo, array numerici per essere esatti (molto probabilmente int o double).

Poiché l'array ha il tipo ENUM_ORDER_TYPE, la chiamata di ArrayInitialize causerà un errore, dicendo che questo metodo di chiamata non è permesso.

Secondo me, ci sono due opzioni in questo caso:

1. cambiare il tipo di array ENUM_ORDER_TYPE in int, e tenerne conto nel codice (almeno i tipi di ordine possono essere facilmente rappresentati come int);

2. Implementare indipendentemente l'"inizializzazione" dell'array.

Il tipo int va bene, voglio che sia anche inizializzato.
 
sergey1294:
Tutto è OK con il tipo int , vorrei che questo tipo fosse inizializzato

O scrivete il vostro ArrayInitialize analogico (come procedura o funzione, a vostra scelta), o chiedete agli sviluppatori di cambiare la logica di ArrayInitialize (che difficilmente saranno d'accordo).

Per esempio, potete organizzare un modulo che contiene, diciamo, ArrayInitializeOrderType() bool e funzioni simili, e poi usarle quando necessario.

 
Interesting:

O scrivete il vostro ArrayInitialize analogico (come procedura o funzione, a vostra scelta), o chiedete agli sviluppatori di cambiare la logica di ArrayInitialize (che difficilmente saranno d'accordo).

Per esempio, potete creare un modulo che contiene, diciamo, ArrayInitializeOrderType() bool e funzioni simili, e poi usarle quando necessario.

Capisco tutto questo, ma non voglio affrontarlo con le stampelle
 
sergey1294:
Capisco tutto questo, ma non voglio farlo con le stampelle

Non lo vedo come "stampelle", lo vedo piuttosto come un'estensione delle funzionalità di MQL5 e la creazione della mia biblioteca personale.

Sono sicuro che è più conveniente, affidabile e in definitiva più veloce.

Документация по MQL5: Основы языка / Функции
Документация по MQL5: Основы языка / Функции
  • www.mql5.com
Основы языка / Функции - Документация по MQL5
 
Interesting:

Non la considero una "stampella", piuttosto la vedo come un'estensione delle funzionalità di MQL5 e la creazione di una propria libreria.

Sono convinto che sia più conveniente, affidabile e in definitiva più veloce.

Sto ancora lavorando con un array di tipo int per memorizzare i segnali.
 

C'è un errore nella nuova build 362 (02.12.2010)? Inaspettatamente la funzione CopyTime, terza variante, ha smesso di funzionare. Lo script dà

2000

2000

-1

La storia è caricata, è presente sul grafico. Tutto funzionava nella build precedente.

void OnStart()
{
        datetime dt[];
        datetime t1 = StringToTime("2010.11.01");
        datetime t2 = StringToTime("2010.11.02");
	Print(CopyTime(_Symbol, PERIOD_CURRENT, 1000, 2000, dt));
	Print(CopyTime(_Symbol, PERIOD_CURRENT, t1, 2000, dt));
	Print(CopyTime(_Symbol, PERIOD_CURRENT, t1, t2, dt));
}
Документация по MQL5: Доступ к таймсериям и индикаторам / CopyTime
Документация по MQL5: Доступ к таймсериям и индикаторам / CopyTime
  • www.mql5.com
Доступ к таймсериям и индикаторам / CopyTime - Документация по MQL5
 

Questa situazione è la seguente, abbiamo bisogno di trasferire i dati dall'indicatore a Expert Advisor. L'ho trovato tramite Globalvariable, ma il problema riguarda la possibile perdita di dati dovuta alla conversione del tipo.

Документация по MQL5: Основы языка / Типы данных / Приведение типов
Документация по MQL5: Основы языка / Типы данных / Приведение типов
  • www.mql5.com
Основы языка / Типы данных / Приведение типов - Документация по MQL5
 
dentraf:

Questa situazione è la seguente, abbiamo bisogno di trasferire i dati dall'indicatore a Expert Advisor. L'ho trovato tramite Globalvariable, ma il problema riguarda la possibile perdita di dati dovuta alla conversione del tipo.

Basta scrivere una conversione esplicita del tipo.
 
alexvd:
Basta scrivere una conversione esplicita del tipo.
Grazie mille!
 

Cosa sono questi errori?

Sono rimaste 7 stringhe trapelate
Terminazione anomala