Новая версия платформы MetaTrader 5 build 6090: общие улучшения - страница 19

 
Aleksey Nikolayev #:

Не понимаю логику ошибки (билд 6104). Если убрать const из параметра, или параметр из Var(), ошибка пропадает.


wrong parameters count    test_Var.mq5    12    17
constant variable cannot be passed as reference    test_Var.mq5    12    15
could be one of 2 function(s)    test_Var.mq5    12    17
   built-in: double ::Var()    test_Var.mq5    12    17
   built-in: double ::Var(int)    test_Var.mq5    12    17
2 errors, 0 warnings        2    0

Спасибо за сообщение. Исправлено. Но в ближайший бета-билд не попадает
 

build 6090

не компилируется:

#include <D:\!_5MQL\Collection\OnBuffer_502.mqh>

пишет:

cannot open "Include\D:\!_5MQL\Collection\OnBuffer_502.mqh" for read (123) Test (с буферами проверки)_новые.mq5 14 10

в MT4 компилируется без проблем


-- это нормально?

 
Andrey F. Zelinsky # :

build 6090

не компилируется:

пишет:

cannot open "Include\D:\!_5MQL\Collection\OnBuffer_502.mqh" for read (123) Test (с буферами проверки)_новые.mq5 14 10

в MT4 компилируется без проблем


-- это нормально?

Проблема возникает в MT4, а не в MT5. Она находится за пределами песочницы и не должна компилироваться.

Кроме того, угловые скобки ('<...>') не должны допускать абсолютный путь.

 
Alain Verleyen #:

Проблема возникает в MT4, а не в MT5. 

в МТ4 проблемы нет -- проблема именно в МТ5 и возникла после последнего обновления

Alain Verleyen #:
Кроме того, угловые скобки ('<...>') не должны допускать абсолютный путь.

почему "не должны"?

требование, чтобы все включения были строго в папке терминала -- это не правильно -- поэтому "должны"

это же компиляция -- должна быть возможность брать файлы откуда удобно -- а не строго из папок терминала

 
Andrey F. Zelinsky #:
почему "не должны"?

Согласно документации

https://www.mql5.com/ru/docs/basis/preprosessor/include

Угловые скобки обозначают, что файл WinUser32.mqh будет взят из стандартного каталога (обычно это каталог_терминала\MQL5\Include).

 
Andrey F. Zelinsky # :

в МТ4 проблемы нет -- проблема именно в МТ5 и возникла после последнего обновления

В MT4 есть проблема: она НЕ должна компилироваться.

То, что происходит с MT5 (не компилируется), является нормальным и ожидаемым. В последнем релизе была исправлена ошибка.

 
Andrey F. Zelinsky #:
должна быть возможность брать файлы откуда удобно
 
 
Alain Verleyen #:

В MT4 есть проблема: она НЕ должна компилироваться.

То, что происходит с MT5 (не компилируется), является нормальным и ожидаемым. В последнем релизе была исправлена ошибка.

только что проверил у себя:

-- МТ4 компилируется БЕЗ проблем

-- МТ5 НЕ компилируется.

компилировалось годами БЕЗ проблем -- после последнего релиза перестало компилироваться.

требование, чтобы подключаемые файлы при компиляции были строго в папке терминала, является абсурдным

 
Andrey F. Zelinsky # :

только что проверил у себя:

-- МТ4 компилируется БЕЗ проблем

-- МТ5 НЕ компилируется.

компилировалось годами БЕЗ проблем -- после последнего релиза перестало компилироваться.

В версии B6090 исправлена ошибка. Символы <> не должны работать с абсолютными путями, а только со стандартной папкой Include.

требование, чтобы подключаемые файлы при компиляции были строго в папке терминала является абсурдным

Верно, то, что я написал, не совсем точно, я запутался в переводе.
 
Alain Verleyen #:
Vladislav Boyko #:   

спасибо, помогли -- так компилируется:

#include "D:\!_5MQL\Collection\OnBuffer_502.mqh"