fxsaber #: Как убрать из Обзора рынка символ в такой ситуации?
В MQL5 нет средств узнать, чем заблокирован (выбран насильно в Обзор рынка) конкретный символ. Единственное что может пользователь, убедиться, что никакой график не открыт и MQL-программа к символу не обращается.
Вероятно, состояние "блокировки" отвиснет по какому-то таймауту, если символ был задействован только текущим скриптом (можно попробовать выдержать Sleep и повторить попытку).
У решётки там какая роль, какую функцию она выполняет? Где можно почитать про неё в справке?
//Параметр макроса можно превратить в строку, добавив перед ним знак '#':#define PRINT_VALUE(value) printf("Value of %s is %d", #value, value);
int x = 5;
PRINT_VALUE(x) // -> Value of x is 5//А еще параметр можно приклеить к чему-то еще, чтобы получился новый идентификатор. Для этого между параметром и тем, с чем мы его склеиваем, нужно поставить '##':#define PRINT_VALUE (number) printf("%d", value_##number);
int value_one = 10, value_two = 20;
PRINT_VALUE(one) // -> 10
PRINT_VALUE(two) // -> 20
В MQL5 нет средств узнать, чем заблокирован (выбран насильно в Обзор рынка) конкретный символ. Единственное что может пользователь, убедиться, что никакой график не открыт и MQL-программа к символу не обращается.
Вероятно, состояние "блокировки" отвиснет по какому-то таймауту, если символ был задействован только текущим скриптом (можно попробовать выдержать Sleep и повторить попытку).
Если нажать на F2, то понимаешь, что разблокировать возможно только перезапуском Терминала, к сожалению.
Если нажать на F2, то понимаешь, что разблокировать возможно только перезапуском Терминала, к сожалению.
Там есть пока еще засеренная кнопочка "Properties" - может быть доделают, что по ней также будет доступна информация, почему символ указанного процесса заблокировался. Хотя логичнее сделать это в контекстном меню самого Обзора рынка.
Дополнительный вопрос - символ стандартный или кастом?
Как теперь такое компилировать?
Как ни менял - выдает ошибку "invalid tester set file extension, '*.set' expected"
Спасибо, исправлю.
Пока используйте такой вариант:
#A
У решётки там какая роль, какую функцию она выполняет? Где можно почитать про неё в справке?
Я нашёл её упоминание только здесь https://www.mql5.com/ru/docs/basis/preprosessor/constant , но это не то.
Как убрать из Обзора рынка символ в такой ситуации?
В MQL5 нет средств узнать, чем заблокирован (выбран насильно в Обзор рынка) конкретный символ. Единственное что может пользователь, убедиться, что никакой график не открыт и MQL-программа к символу не обращается.
Вероятно, состояние "блокировки" отвиснет по какому-то таймауту, если символ был задействован только текущим скриптом (можно попробовать выдержать Sleep и повторить попытку).
У решётки там какая роль, какую функцию она выполняет? Где можно почитать про неё в справке?
В MQL5 нет средств узнать, чем заблокирован (выбран насильно в Обзор рынка) конкретный символ. Единственное что может пользователь, убедиться, что никакой график не открыт и MQL-программа к символу не обращается.
Вероятно, состояние "блокировки" отвиснет по какому-то таймауту, если символ был задействован только текущим скриптом (можно попробовать выдержать Sleep и повторить попытку).
Если нажать на F2, то понимаешь, что разблокировать возможно только перезапуском Терминала, к сожалению.
Если нажать на F2, то понимаешь, что разблокировать возможно только перезапуском Терминала, к сожалению.
Там есть пока еще засеренная кнопочка "Properties" - может быть доделают, что по ней также будет доступна информация, почему символ указанного процесса заблокировался. Хотя логичнее сделать это в контекстном меню самого Обзора рынка.
Дополнительный вопрос - символ стандартный или кастом?
Дополнительный вопрос - символ стандартный или кастом?
Стандартный.
Читать в доках макросов C++
Понятно, спасибо.
есть опечатка, пробела перед скобкой не должно быть:
#define PRINT_VALUE(number)исправьте в его посте кто может