Выпущена бета-версия MetaTrader 4 Build 582 с обновленным языком MQL4 и Маркетом приложений - страница 61

 
220Volt:

Очень не логична передача массивов. Вот это в голове с трудом укладывается, вырезать бы амперсанд:

void write_to_log(const char &mes[]);

Нормально тут. Передаём по ссылке. Модифицировать запрещаем.
 

Не бывает в C++ такой передачи, есть стандартное array to pointer преобразование и никаких амперсандов. И не логична такая конструкция.

P.s: не в смысле амперсандов нет вообще, а в данном контексте.

 

Ну в общем давно было сказано, что МКЛ5 это почти С. А новый МКЛ4 почти мкл5. Поэтому претензии вроде как не к месту...

Поздно

 
Пожелание: добавить в МЕ возможность выбора цветовых схем, в частности, темных.
 
220Volt:
Не бывает в C++ такой передачи, есть стандартное array to pointer преобразование и никаких амперсандов. И не логична такая конструкция.

Это для С++ или для MQL? Для MQL подходит такая запись.

Для С++ тоже подходит, если mes является классом. Только тогда скобки ("[]") лишние.

 
Zhunko:

Это для С++ или для MQL? Для MQL подходит такая запись.

Для С++ тоже подходит, если mes является классом. Только тогда скобки ("[]") лишние.


)) Значит не подходит.
 

установил 583 билд с вашего сайта на несистемный диск. Перекинул все индикаторы в каталог данных (он оказался на том же диске, где и МТ). При попытке перекомпилировать получил:

cannot create interface of MQL compiler Compiler. Это что, намек на необходимость установки МТ на системный диск?

 

CHARTEVENT_OBJECT_CLICK


я так понял данное событие работает только на картинки? на Label не применимо
?

нет вроде применимо. наверное порядок отрисовки текст - картинка изменился.

 
ZenSlava:

установил 583 билд с вашего сайта на несистемный диск. Перекинул все индикаторы в каталог данных (он оказался на том же диске, где и МТ). При попытке перекомпилировать получил:

cannot create interface of MQL compiler Compiler. Это что, намек на необходимость установки МТ на системный диск?


Необходимо больше подробностей

1) Какая у вас ОС ? Какая битность ? С какими правами запускаете терминал ?

2) В какую папку вы скопировали индикаторы ? Укажите полный путь, пожалуйста.

3) Приложите логи терминала

Спасибо

 
Kedr:


Индикатор, висящий на графике – не реагирует на изменения в extern-ах. Удаляем. Вешаем по новой этот же индикатор сразу с необходимыми изменениями в extern-ах – все нормально.

Индикатор, висящий на графике – не реагирует на перекомпиляцию с измененными extern – ами в коде. Удаляем. Вешаем по новой – нормально.

Индикатор, висящий на графике – перекомпилируем. Что то остается, что то пропадает на графике. Сам индикатор – не работает.

Мы посмотрели Ваш индикатор.

Главная проблема заключается в том, что Вы заложились на ошибочное поведение индикаторов в старом клиентском терминале.

С какого-то момента переинициализация глобальных переменных в пользовательских индикаторвх (но не в экспертах!) стала производиться после простой смены входных параметров. А это явно противоречит нашей же справке

Инициализация глобальных переменных производится однократно сразу после загрузки программы в память клиентского терминала.

В новой четвёрке поведение исправили - привели в соответствие справке.

Вставьте строчку

   first=true;

в Вашу функцию init. Переменная first больше не будет переинициализироваться автоматически после смены входных параметров Вашего индикатора

Причина обращения: