Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 525

 
Vladislav Andruschenko:
Si se especifica rost sin un valor, el valor por defecto es false

¿Puede explicar qué relación tiene esto con mi post? No lo entiendo en absoluto.

 
novichok2018:

¿Puede explicar qué relación tiene esto con mi post? Porque no lo entiendo en absoluto.

Tú lo has preguntado. Entrarán todas las condiciones que no sean iguales a true. Sólo tienes dos comprobaciones. Pero si la comprobación no es verdadera, entonces la comprobación es falsa. La segunda línea no importa porque rost = bool y sólo puede tomar 2 valores y es falso por defecto
 
novichok2018:

¡Buenas tardes!

Pregunta sobre la sintaxis de mcl4: si pongo una bandera como esta:

¿entonces la condición if(!rost) atrapará sólo la condición para rost=false o todas las condiciones que no caigan bajo rost=true?

Gracias.

No olvides inicializar "rost". En tu fragmento si cl2=cl1 o cl2=op1 entonces "rost" es lo que sea
 
Vladislav Andruschenko:
Tú lo has preguntado. Se atraparán todas las condiciones que no sean verdaderas. Sólo tienes dos comprobaciones. Pero si la comprobación no es verdadera, entonces la comprobación es falsa. La segunda línea no importa porque tienes rost = bool y sólo puede tomar 2 valores y por defecto es false

Por lo tanto, todas las condiciones que no caigan bajo la condición de verdadero serán automáticamente falsas y así la entrada if(!rost) capturará tanto la condición (op1>cl2 && cl1<cl2) como la condición (op1<cl2 && cl1>cl2).¿Correcto?

 
Maxim Kuznetsov:
no te olvides de inicializar "rost".

¿Cómo?

 
novichok2018:

Por lo tanto, todas las condiciones que no caigan bajo la condición de verdadero serán automáticamente falsas y así la entrada if(!rost) capturará tanto la condición (op1>cl2 && cl1<cl2) como la condición (op1<cl2 && cl1>cl2).¿Correcto?

Sí.
Si se declara rost sin valor, siempre será igual al último valor a nivel global.

Has especificado muy pocos datos y un código incompleto para dar una respuesta concreta.
 
novichok2018:

¿Cómo?

Bool rost=false;
 
Vladislav Andruschenko:
Bool rost=false;

Pero sólo quiero evitar una situación en la que !rost capture todas las condiciones para rost != true. Así que no inicié Bool rost=false a nivel global, sino que inicié onTick() por separado para false y por separado para true. Tal vez, para evitar confusiones, es mejor establecer las condiciones no if(rost) e if(!rost) sino if(rost==true) e if(rost==false) ?

¡O bien introducir otro fla que restrinja las condiciones de !

 
novichok2018:

Pero sólo quiero evitar una situación en la que !rost capture todas las condiciones para rost != true. Así que no inicié Bool rost=false a nivel global, sino que inicié onTick() por separado para false y por separado para true. Tal vez, para evitar confusiones, sea mejor no establecer las condicionesif(rost) e if(!rost), sino if(rost==true) e if(rost==false) ?

Entradas absolutamente idénticas.

 
Artyom Trishkin:

Entradas absolutamente idénticas.

Esta correspondencia sólo muestra que en mi casoif(!rost) no es lo mismo queif(rost==false). Porquehay una condición distinta para elfalso.

Razón de la queja: