Бета версия MetaTrader 4 IDE, включающая в себя новый компилятор MQL4 и редактор - страница 7

 
MetaQuotes:

1. Про параметры в start/init/deinit мы упомянули, так как их там и не должно было быть никогда, но нам попадались примеры исходников, когда авторы по ошибке добавляли ненужные параметры. В старом MQL4 это пропускалось без звука, а в MQL5 уже сообщается как ошибка. Никаких проблем тут нет - просто очень редкая ошибка будет сразу видна.

2. Кто мучился с DLL, да еще и с передачей многомерных строковых массивов в DLL, те наоборот вздохнут свободно. Перед разработчиками открываются все возможности работы со структурами и больше не нужно строить костыли на строках.

Новая версия MQL4 дает много новых возможностей, сохраняя совместимость.

1. А как же это?! У меня много, где эта возможность используется. Думаю, что не только у меня.

2. Выделенное замечательно! Но оставте совместимость со старым!

MetaQuotes:

Паниковать не надо. Скачайте предложенный пакет IDE+MQL и проверьте свои разработки.

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

Это тоже замечательно! Коды, что в Code Base, писали не только профи. Наверняка скобок нет в логических выражениях. Эти коды работать не будут. Сделайте ключ для компилятора чтобы пропускал по старым правилам.
 
MetaQuotes:

Кто мучился с DLL, да еще и с передачей многомерных строковых массивов в DLL, те наоборот вздохнут свободно. Перед разработчиками открываются все возможности работы со структурами и больше не нужно строить костыли на строках.

Почему костыли-то? Чем плох строковой массив? Кстати я вначале невнимательно прочитал этот пункт, оказывается там речь не только о многомерных массивах, а вообще о массивах строк. Это как же так? Каким образом вы предлагаете заменить передаваемый массив структурой? Например для массива из 1000 строк, нужно делать так что ли:

struct StrStruct { string a1; string a2; string a3; .... string a1000; } A; И потом каждый член инициализировать? Это ж бред.

Новая версия MQL4 дает много новых возможностей, сохраняя совместимость.

Только совместимость не полная.
 
Meat:

Почему костыли-то? Чем плох строковой массив? Кстати я вначале невнимательно прочитал этот пункт, оказывается там речь не только о многомерных массивах, а вообще о массивах строк. Это как же так? Каким образом вы предлагаете заменить передаваемый массив структурой? Например для массива из 1000 строк, нужно делать так что ли:

struct A { string a1; string a2; string a3; .... string a1000; }; И потом каждый член инициализировать? Это ж бред.

Только совместимость не полная.


Структура передается в виде строки и полностью ей эквивалентна. Любая операция на строке применима к структуре.
 
Кстати, очень верно подмечено. Это не является недокумментированной возможностью. Я тоже раньше часто использовал это.
 
tara:

Структура передается в виде строки и полностью ей эквивалентна. Любая операция на строке применима к структуре.

Не понял. Как это?
 
Meat:

Не понял. Как это?

Применительно к базам данных - поля сливаются. Соединяются.
 
tara:

Применительно к базам данных - поля сливаются. Соединяются.
Ничего не понятно. Что ещё за базы данных? Откуда они в MQL? Вот мы имеем массив: string A[1000]; Как его передать в DLL?
 
Meat:
Ничего не понятно. Что ещё за базы данных? Откуда они в MQL? Вот мы имеем массив: string A[1000]; Как его передать в DLL?


Алексей, если у Вас двумерный строковый массив, то Вы можете его легко заменить на одномерный массив структур.

Кстати, это будет более выразительная комбинация :)

 

Вадик тупо гневается на неизбежную конкуренцию. ;) // имха самосабой

Раньше он был "панацеей" со своими библиотеками, а теперь они куда менее востребованы будут - почти всё можно сделать вообще без них, а многое из того что нельзя можно найти готовым в кодобазе на mql5.com

Вадим, ищи плюсы, их на порядки больше.

 
MetaDriver:

Вадик тупо гневается на неизбежную конкуренцию. ;) // имха самосабой

Раньше он был "панацеей" со своими библиотеками, а теперь они куда менее востребованы будут - почти всё можно сделать вообще без них, а многое из того что нельзя можно найти готовым в кодобазе на mql5.com

Вадим, ищи плюсы, их на порядки больше.

Свой код "ближе к делу". В свободном доступе редко встретишь что-либо "не заслуживающее переделки".
Причина обращения: