Tipo lógico (booleano)

El tipo lógico está pensado para almacenar características que sólo tienen 2 estados posibles: «activado» o «desactivado». Sus análogos de interfaz son opciones en diálogos de configuración de muchos programas, incluido MetaTrader 5: cada indicador puede estar activado o desactivado. La comprobación de los estados de tales características permite dividir la lógica de la ejecución del programa, de ahí el nombre de este tipo.

El tipo de lógica se define en MQL5 con la palabra clave bool y consume 1 byte de memoria. Para este tipo, se reservan dos constantes: true y false. Además, se admiten situaciones (y los programadores suelen aprovecharlas) en las que bool es el resultado de cálculos con números enteros y reales, interpretándose el valor 0 como false y cualquier otro como true.

También se admite la interpretación inversa del valor del tipo bool como un número: true se considera 1 y false, 0.

En el archivo MQL5/Scripts/MQL5Book/p2/TypeBool.mq5 se ofrecen ejemplos de variables de tipo lógico.

void OnStart()
{
  bool t = true;          // true
  bool f = false;         // false
  bool x = 100;           // x = true
  bool y = 0;             // y = false
  int i = true;           // i = 1
  int j = false;          // j = 0
}

Para el tipo lógico se proporciona un conjunto de operaciones lógicas especiales (véase Operaciones lógicas (booleanas) y Operaciones de comparación).