Errori, bug, domande - pagina 2642

 
Alexey Viktorov:

Probabilmente perché solo una persona a prima vista guarda tale codice

Il programmatore può capire cosa succederà senza pensare. Secondo me, la lamentela dovrebbe essere rivolta a C e C++, non a MQL. È mql che protegge da questi bug occasionali.

Non c'è un errore simile in C/C++.

Sergei Tabolin:

Questa vostra funzione è un bug. Se i==100, il prossimo controllo per lo stesso i==100 non funzionerà. E otterrete un ciclo infinito.

Date un'occhiata più da vicino. Non c'è nessun errore nella funzione che ho postato sopra.

 
traveller00:

Non c'è un errore simile in C/C++.

Date un'occhiata più da vicino. Non c'è nessun errore nella funzione che ho postato.

Perché state discutendo? Vi è stata data la risposta. Usa

Forum sul trading, sistemi di trading automatico e test di strategia

Errori, bug, domande

Vladimir Karputov, 2020.02.11 05:11

Se la funzione non è dichiarata come nulla, deve restituire un valore:

bool Func()
{
  for(int i=1;;++i)
  {
    if(i==1)
      continue;
    if(i==100)
      return false;
  }
  //---
  return(false);
}

 

Dobbiamo rimuovere i numeri del portafoglio e del saldo dall'intestazione del partytal - sono informazioni totalmente inutili e poco usate!

Il mio forum è ora accessibile solo tramite la casella a discesa - orrore!

 
Come è possibile raccogliere automaticamente tutti i file che mq5 utilizza? Ho bisogno di trasferire il codice sorgente di un EA. Ci sono decine di file inclusi in diverse cartelle.
 
fxsaber:
Con cosa è possibile raccogliere automaticamente tutti i file che usa mq5? Ho bisogno di trasferire il codice sorgente di un EA. Ci sono decine di file inclusi in diverse cartelle.

con un compilatore di terze parti

Ho usatoGCC per compilare codici e aprire definizioni, ma non è possibile eseguirlo in 2 clic, sembra che possa solo compilare tutti gli inludi in una cartella locale e sembra che il file principale debba avere un'estensione .c

Provate a eseguirlo almeno sulla linea di comando.

 g++ -E tst.c -o tst.ii

tst.c è il file principale e tst.ii è il file di testo in uscita.

 
Igor Makanu:

da un compilatore di terze parti.

Quindi non può sapere cosa

#include <..\Experts\FileName.mqh>

dovrebbe essere preso relativo alla cartella Include.

 
fxsaber:

Quindi non può sapere cosa

dovrebbe essere preso relativo alla cartella Include.

sì, molto probabilmente non può, ha bisogno di percorsi completi nella direttiva del precompilatore - ma come ho scritto, devo ancora copiare il progetto in una cartella locale, e lì organizzare tutto in cartelle, sembra che anche i percorsi dei file lunghi non possano C:\Users\User\AppData\Roaming\MetaQuotes\Terminal\E6E3D0917AE641512E4779524EB3B1AA

Ma GCB può sicuramente costruire programmi MQL - l'ho controllato circa sei mesi fa, provalo o aspetta di vedere se qualcuno può dirmelo.

 
fxsaber:
Come è possibile raccogliere automaticamente tutti i file che mq5 utilizza? Ho bisogno di trasferire il codice sorgente del mio EA. Ci sono decine di file inclusi in diverse cartelle.

Sysinternals ProcMon.

 
fxsaber:
Qual è l'assemblaggio automatico di tutti i file che usa mq5? Devo trasferire il codice sorgente del mio Expert Advisor. Ci sono decine di file inclusi in diverse cartelle.

Questoarticolo in particolare è stato scritto per questo compito. C'è solo una lista di dipendenze, ovviamente. Per impacchettare il tutto, avrete bisogno di qualche ritocco.

Синтаксический анализ MQL средствами MQL
Синтаксический анализ MQL средствами MQL
  • www.mql5.com
Суть программирования заключается в формализации и автоматизации неких процессов с помощью языков общего или специального назначения. Торговая платформа MetaTrader позволяет применять программирование для решения самых разных задач трейдера, благодаря встроенному языку MQL. И обычно процесс программирования строится на анализе и обработке...
 

Se si descrive una tale struttura:

struct MyStruct
   {
   double d_value;
   int    i_value;
   uchar  arr_u[100];
   };

e scriverlo in un file, ci possono essere differenze quando si scrive in MQL5 e si legge in MQL4 di questo file? o viceversa...

o viceversa... In generale, c'è qualche differenza nei linguaggi per la memorizzazione di tipi di dati complessi? (in memoria, in file)