Вопросы, касаемые нового билда...

 

Загрузив один из свой проектов в новый билд у меня посыпались ошибки. Ну меня это не удивило по некоторых известным причинам. Сразу возникли вопросы:

1. Как в файлах-включениях, так и в библиотеках как я понял теперь в параметрах функций передавать массивы нужно теперь обязательно по ссылке?

В эксперте в глобальных есть такие внешние переменные:

extern int     TStop.Buy = 70;          // расстояние от текущего курса (пунктов), на котором включается трейлинг, пунктов
extern int     TStop.Sell = 10;         // расстояние от текущего курса (пунктов), на котором включается трейлинг, пунктов

При компиляции данного эксперта компилятор ругается на эти 2 строки кода так:

'.' - semicolon expected        Perevorot_T.mq4 24      21
'.' - semicolon expected        Perevorot_T.mq4 25      21

2. Почему? Зачем так требуется точка с запятой??? Логика в чём?

 
Виктор, что за точка в имени переменной? Справку смортел?
 
Zhunko:
Виктор, что за точка в имени переменной? Справку смортел?

Вадим,смотрел, разумеется. С каких пор точки запретили в названиях? Я такого не припомню.
 
hoz:

Вадим,смотрел, разумеется. С каких пор точки запретили в названиях? Я такого не припомню.
Запретили с момента появления MQL++ и бета-билдов версии выше 509.
 
evillive:
Запретили с момента появления MQL++ и бета-билдов версии выше 509.

И в справку добавили?

Касаемо:

1. Как в файлах-включениях, так и в библиотеках как я понял теперь в параметрах функций передавать массивы нужно теперь обязательно по ссылке?

Я прав? И в инклюдах и в библиотеках по ссылке только теперь массивы передавать обязательно? Раньше я передавал без ссылки и всё работало...

 
Да, и в справку добавили, и ветке нового билда написали.
 
Вообще лажа сплошная.
 
evillive:
Да, и в справку добавили, и ветке нового билда написали.

В справке я касаемо данного вопроса не нашёл ничего. В ветке https://www.mql5.com/ru/forum/148850 тоже вроде нет, по крайне мере на первой странице.
 
hoz:

Я прав? И в инклюдах и в библиотеках по ссылке только теперь массивы передавать обязательно? Раньше я передавал без ссылки и всё работало...

Они и раньше всегда по ссылке передавались, просто сейчас надо явно это дело прописывать.

А точку нельзя ибо классы появились.

 
hoz:

В справке я касаемо данного вопроса не нашёл ничего. В ветке https://www.mql5.com/ru/forum/148850 тоже вроде нет, по крайне мере на первой странице.

В поиск справочника вбейте "Что нового в MQL4". В упомянутой ветке прямо на первой странице есть таблица внизу стартового поста, там короче, но всё понятно.
 
evillive:

В поиск справочника вбейте "Что нового в MQL4". В упомянутой ветке прямо на первой странице есть таблица внизу стартового поста, там короче, но всё понятно.


Действительно, про имена там всё сказано, но про передачу массивов только по ссылке нет.

Кстати, ещё странные ошибки появились подобного содержания:

'fLotPrecision' - ambiguous call to overloaded function with the same parameters        hoz_Base@Library.mq4    81      22

И таких довольно-таки много. С чем это связано вообще?

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