Логический тип

Логический тип предназначен для хранения признаков, имеющих только 2 возможных состояния: "включен"/"выключен". Их интерфейсным аналогом являются опции в диалогах настройки многих программ (MetaTrader 5, в том числе): каждый флаг может быть либо включен, либо выключен. Проверка состояния таких признаков позволяет ветвить логику выполнения программ, отсюда и название типа.

Логический тип определен в MQL5 под ключевым словом bool и занимает в памяти 1 байт. Для типа зарезервированы две константы: true ("истина") и false ("ложь"). Кроме того, допустимы ситуации (и этим часто пользуются программисты), когда bool является результатом вычислений с целыми и вещественными числами, при этом значение 0 интерпретируется как false, а любые другие — как true.

Обратная интерпретация значения типа bool как числа при вычислениях также поддерживается: true считается равным 1, а false — 0.

Примеры переменных логического типа есть в файле MQL5/Scripts/MQL5Book/p2/TypeBool.mq5.

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
}

Для логического типа предусмотрен набор специальных логических операций (см. Логические операции и Операции сравнения).