Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 1061

 
fxsaber:

Grazie, anche se non capisco tutto qui.

In particolare, dov'è l'effettiva lettura da file?

E perché le funzioni descritte nella documentazione come funzionanti con i file csv in realtà non funzionano con essi?

 
MakarFX:

In questo caso, la finestra di avviso non si apre.(

Non è vero. Recentemente ho fatto una domanda al batterista... e lui ha usato la sua posizione ufficiale per bandirmi per una settimana per aver fatto quella domanda. Vuoi che ti faccia la stessa domanda?

Perché ho scritto in nero in russo "ps: ho controllato tutto" . E chi vi proibisce di controllare prima di tali affermazioni?

 
Yurixx:

Grazie, anche se non capisco tutto qui.

In particolare, dov'è la lettura effettiva dal file?

E perché le funzioni descritte nella documentazione come funzionanti con i file csv in realtà non funzionano con essi?

Per quanto ne so, funzionano, ma ci sono problemi con lo spostamento del puntatore nel file.

 

Alexey Viktorov:

Perché ho scritto in nero in russo: "ps: ho controllato tutto" . E chi vi proibisce di controllare prima di fare queste dichiarazioni?

Tu sei Dio! La decisione è stata così facile e tu non hai detto niente.

Grazie.

 
Alexey Viktorov:

Per quanto ne so funziona, ma ci sono problemi quando si sposta il puntatore nel file.

Si scopre che MQL5 è molto più rigoroso di MQL4.

Il parametro delimitatore in FileOpen() deve essere di tipo breve, e si dovrebbero usare soloapici singoli per specificare il suo valore.

Inoltre, i flag della funzione devono contenere un riferimento al tipo di file FILE_ANSI o FILE_UNICODE.

Altrimenti, come nel mio caso, la funzione memorizzerà l'intero file csv in una variabile scalare.

 

Chi ha più da dire su questo argomentohttps://www.mql5.com/ru/forum/160683/page1054#comment_14760155 . Da quanto ho capito non si possono passare strutture locali in una funzione che sono sempre visibili in tutta la funzionehttps://www.mql5.com/ru/forum/160683/page1060#comment_14768305 . Voglio fare quello che

int OnInit()
  {
     {
      struct MyPoint// локально объявил структуру внутри функции
        {
         int         x[5];
         int         y;
        };
      MyPoint qw1;
      EqualPointsP(qw1);// передал структуру в функцию EqualPointsP

     }
   return(INIT_SUCCEEDED);
  }

void OnDeinit(const int reason) {}

bool EqualPointsP(MyPoint & qw)
  {
   Print("EqualPointsP ");
   bool f = true;
   return f;
  }

È possibile farlo?

 
Seric29:

Chi ha più da dire su questo argomentohttps://www.mql5.com/ru/forum/160683/page1054#comment_14760155 . Da quanto ho capito non si possono passare strutture locali in una funzione che sono sempre visibili in tutta la funzionehttps://www.mql5.com/ru/forum/160683/page1060#comment_14768305 . Voglio fare quello che

È possibile farlo?

Usa lo styler del codice (Ctrl + <) - è impossibile dire dove e come sono messe le tue parentesi - tutto è storto. Per questo motivo, personalmente, non ho guardato. Ci ho provato, ma i miei occhi mi hanno detto di lasciar perdere, così ho lasciato perdere...

 
MakarFX:

Tu sei Dio! La decisione è stata così facile e tu sei rimasto in silenzio.

Grazie.

Non ho taciuto, ho espresso ciò che ricordavo da dieci anni... ma qualche tempo dopo ci fu un cambiamento e la mia conoscenza divenne obsoleta. Per insegnarvi qualcosa ho dovuto scrivere del codice e controllare con diverse varianti. E tutto questo poteva e doveva essere controllato da voi.

È per il futuro. Buona fortuna.

 
Artyom Trishkin:

Usa lo styler del codice (Ctrl + <) - è impossibile determinare dal volo dove e come sono posizionate le tue parentesi - tutto è storto. Per questo motivo, personalmente, non ho guardato. Ci ho provato, ma i miei occhi dicevano - lascialo cadere - e l'ho lasciato cadere...

Beh, non c'è fondamentalmente nulla da stilizzare, puoi copiare e incollare in MT4, questo è fondamentalmente come lo scrivo io, solo in un modo più conciso. Bene, l'ho corretto. Queste strutture possono essere superate o no?

 
Seric29:

Beh, non c'è fondamentalmente nulla da stilizzare, puoi copiare e incollare in MT4, questo è fondamentalmente come lo scrivo, solo in un modo più conciso. Bene, l'ho corretto. Queste strutture possono essere trasferite o no?

Ma posso controllare io stesso? È difficile? E perché devo scrivere cose inutili?

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   struct MyPoint// локально объявил структуру внутри функции
     {
      int         x[5];
      int         y;
     } qw1;

   EqualPointsP(qw1);// передал структуру в функцию EqualPointsP
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason) {}

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
bool EqualPointsP(MyPoint &qw)
  {
   Print("EqualPointsP ");
   return true;
  }

Non ho controllato. Cosa ti ferma?

Motivazione: