Errori, bug, domande - pagina 3130

 
Alexey Viktorov #:

Non capisco affatto questo codice.

Cosa significa la & evidenziata in questo codice? E in quale ciclo dovrebbe essere eseguito if(h_plus)? Non hai perso qualche staffa curva?

MQL bool è vero se maggiore di 0, in altri linguaggi un valore booleano è vero solo se == 1

 
Alexey Viktorov #:

Non capisco affatto questo codice.

Cosa significa la & evidenziata in questo codice? E in quale ciclo dovrebbe essere eseguito if(h_plus)? Non ti manca nessuna staffa curva?

 bool h_plus=true; //false?
   for(int increment=1; increment<=n; increment++)
      h_plus&=high[i]>high[i+increment];
   if(h_plus) {...}
   ...


 
x572intraday #:

In effetti, mi sono imbattuto in questa funzione per caso. Non è quello che volevo...

o

Il problema è che n può essere abbastanza grande, quindi volevo avvolgere questa lunga catena di condizioni in una compatta per. Ho provato in questo modo:

ma si è rivelato un po' un casino. Beh, almeno perché h_plus con questo algoritmo dovrà prendere l'intera somma delle condizioni controllate, compresa la condizione con il controllo ridondante dell'array di indici, cosa che non accadeva nel primo if non avvolto, senza for. E altre vernici rovinano l'immagine.

Vale la pena prenderlo in considerazione? È possibile sovrascriverlo?

Qualcosa del genere:

for(int i=start; i<rates_total-3 && !IsStopped(); i++)
{
   bool h_plus=true; //false?
   for(int increment=1; increment<=n; increment++)
     {
      h_plus&=high[i]>high[i+increment];
      if(!h_plus)break;
     }
   if(h_plus) {...}
   ...
}
 
Lilita Bogachkova #:


Operazione bitwise AND delle rappresentazioni binarie di y e x y &= x;

https://www.mql5.com/ru/docs/basis/operations/assign

Документация по MQL5: Основы языка / Операции и выражения / Операции присваивания
Документация по MQL5: Основы языка / Операции и выражения / Операции присваивания
  • www.mql5.com
Операции присваивания - Операции и выражения - Основы языка - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Lilita Bogachkova #:


Quale linea della vostra istantanea ha &=

 
JRandomTrader #:

Operazione bitwise AND delle rappresentazioni binarie di y e x y &= x;

https://www.mql5.com/ru/docs/basis/operations/assign

Capisco. Non è per i fai-da-te... ero troppo pigro per cercare lì...
 
Alexey Viktorov #:

Non capisco affatto questo codice.

Cosa significa la & evidenziata in questo codice?

Posso solo rispondere per &= immediatamente:

Guida di riferimento MQL5 / Basi del linguaggio / Operazioni ed espressioni / Operazioni di assegnazione:

Operazione bitwise AND di rappresentazioni binarie di y e x y &= x;

simile alla variabile cumulativa y:

Aumentando il valore della variabile y di x y += x;


Ma questa è la mia prima esperienza di utilizzo di &=, quindi potrei sbagliarmi.

E in quale ciclo dovrebbe essere eseguito l'if(h_plus)? Ti sei perso le staffe curve?

No. Prima (per progettazione) tutte le condizioni logiche sono sommate nell'accumulatore h_plus all'interno del for, e la somma bool risultante è sostituita nell'if, che non ha nulla a che fare con il for interno.
 
Alexey Viktorov #:

Quale linea della tua immagine ha &=

https://stackoverflow.com/questions/33304407/c-meaning-and

C++ meaning |= and &=
C++ meaning |= and &=
  • 2015.10.23
  • Sven van den Boogaart
  • stackoverflow.com
I have a part of code that contains the following functions: I know what a switch case is but I don't understand what these parts do. is an int. The 's also refer to an int value. Could someone explain what these parts do? An example with input values and results would be nice.
 
Lilita Bogachkova #:

Tu pensi troppo a me... non ho mai imparato questa lingua nemica... così è successo... e ora è troppo tardi.

 
JRandomTrader #:

Qualcosa del genere:

Ho già provato sia la rottura che il ritorno nella foga del momento, ma ha solo peggiorato le cose. Cercherò di semplificare ancora un po' il codice e di ripensare con la pausa...