Новая версия платформы MetaTrader 5 build 2755: Улучшения в окне котировок и отладчике - страница 3

 

неправильно работает отладчик

не показывает значение элемента массива (всегда 0)


Файлы:
 
Nikolai Semko:

неправильно работает отладчик

не показывает значение элемента массива (всегда 0)

Точку останова нужно ставить на следующую строку. 

 
Vladimir Karputov:
Точку останова нужно ставить на следующую строку. 

из скрина видно, что я уже сделал шаг вперед (F10).
Если точку остановки поставить на следующую стоку - результат тот же.

 
Nikolai Semko:

из скрина видно, что я уже сделал шаг вперед (F10).
Если точку остановки поставить на следующую стоку - результат тот же.

Да, сразу не обратил внимание.

На

MetaTrader 5 x64 build 2757 started for MetaQuotes Software Corp.
Windows 10 build 19042, Intel Core i7-9750H  @ 2.60GHz, 24 / 31 Gb memory, 866 / 947 Gb disk, IE 11, UAC, GMT+2
C:\Users\barab\AppData\Roaming\MetaQuotes\Terminal\D0E8209F77C8CF37AD8BF550E51FF075

также воспроизводится - обращение по индексу в окне наблюдения выдает '0'. При этом если развернуть весь массив (двойной клик в окне наблюдений) - массив корректно показывает изменение значений элементов массива.

 

Уважаемые разработчики, посмотрите пож-ста, как в статусной строке отображаются "большие" цифры. К примеру цена биткоина с 3 цифрами после запятой. Наверное не хватает для ценовых строк отступа справа. Цена примыкает вплотную к разделителю.

Файлы:
btcusd.png  59 kb
 
Nikolai Semko:

неправильно работает отладчик

не показывает значение элемента массива (всегда 0)

Спасибо за сообщение, исправлено

 

Как такое возможно?


 
Ivan Titov:

Как такое возможно?

Ошибка в отладчике

Спасибо за сообщение, исправлено.

 
Edgar Akhmadeev:

В 2746-2755 в отладчике проблемы остались. В 2741 - OK. В 2743-2744 другие проблемы, описанные ранее.

Это скелет кода. К сожалению, не удалось упростить и выложить код, воспроизводящий проблему. Всё зависит от предыдущих действий, код у меня сложный. Суть в том, что проблема возникает в присвоении возвращаемому результату.

Не знаю, как быть дальше, билд 2741 обновляется насильно.

Проверил 2757. Выяснилось

void
f1(double& result) {
        double f = f2();        // DBG: f == 1.044474735096605
        double t = f;           // DBG: t == 1.044474735096605
        result = f;             // DBG: result == 2.9671582316238385E-315, после возврата из функции тоже
        Print(result, " ", f);  // LOG: result == f == 1.044474735096605
        if (result == f)        // да, равны, после возврата из функции тоже
}
 
Терминал же генерирует не зависимо от советников, событие новый бар, почему бы не дать функцию, для подписки, на уже имеющиеся событие в сервисах?
Обработчик события "новый бар"
Обработчик события "новый бар"
  • www.mql5.com
Язык программирования MQL5 позволяет решать задачи на совершенно новом уровне. Даже те задачи, которые уже вроде имеют решения, благодаря объектно-ориентированному программированию могут подняться на качественно новый уровень. В данной статье специально взят простой пример проверки появления нового бара на графике, который был преобразован в достаточно мощный и универсальный инструмент. Какой? Читайте в статье.
Причина обращения: