В MQL5 всегда есть место подвигу ! ;) - страница 9

 
George Merts:

Алексей, еще бы ты рассказал, как завернуть в класс массивы, выдаваемые функцией OnCalculate() - именно в этом случае без копирования указателей никак не обойтись.

Сейчас  - я просто копирую данные в свой класс-массива, и далее - уже тяну указатель на этот объект. Но, получается лишнее копирование, что, как я погляжу, при частых тиках и большом количестве графиков - весьма заметно добавляет "тяжести". Хочется уйти от этого копирования. Но, кроме костыля через ДЛЛ (хоть стандартную, хоть самописную) - пока ничего не предложишь.

В Сервисдеске - отбиваются, говорят, мол, "объект может быть удален". Это ихние-то собственные массивы ! Когда говоришь, что я могу объект создать, а потом удалить его и указатель будет невалиден - отвечают, что, мол, "это уже я буду за это ответственен". Налицо "двойная мораль".

И хрен бы с ней, с этой ДЛЛ - но при запуске такие индикаторы требуют постоянного подтверждения - что весьма мешает...

Не считаю грехом импорт dll, которая уже и так тянется терминалом. 
Насчет опции подтверждения. Это ведь один раз в сеттингах терминала сделать надо, не? Где здесь "постоянное подтверждение"?
Если человек - утюг, то у меня есть антидот... индикатор который сам лезет в настройки мт и ставит галочку... Правда этот индюк тоже надо сначало заапрувить на импорт )))
Насчет "объекта" и сервисдесков. Объект в MT понятие субъективное. Для MQL программера объектом является то, что ловится гербедж коллектором, если есть утечка.
Нечто, что создано легальным MQL аллокатором.
С колокольни WinAPI или процесса, то сам этот аллокатор и любая "статическая" область выполнения индюка/эксперта и ежи с ней - это тоже есть объект.
Объект, который где-то в хипе MT наряду с окошками, потоками и кнопкой "закрыть".
Отсюда и двойственная мораль, отсюда и ряд рестрикшенов MQL, которые не позволяют работать по реальным указателям, адресам памяти, хукам, прививкам всяких вин калбэков.
Мое мнение, зря вообще ребята разрешили dll импорт. Теперь это наверняка самый больной зуб. С одной стороны MQL программеры просят больше полномочий, а с другой стороны сам терминал должен оставаться монолитным продуктом. А не вафлей на растерзание разнообразными модами и патчами от народных самописцев.
 
alexsis78:
Не считаю грехом импорт dll, которая уже и так тянется терминалом. 
Насчет опции подтверждения. Это ведь один раз в сеттингах терминала сделать надо, не? Где здесь "постоянное подтверждение"?
Если человек - утюг, то у меня есть антидот... индикатор который сам лезет в настройки мт и ставит галочку... Правда этот индюк тоже надо сначало заапрувить на импорт )))
Насчет "объекта" и сервисдесков. Объект в MT понятие субъективное. Для MQL программера объектом является то, что ловится гербедж коллектором, если есть утечка.
Нечто, что создано легальным MQL аллокатором.
С колокольни WinAPI или процесса, то сам этот аллокатор и любая "статическая" область выполнения индюка/эксперта и ежи с ней - это тоже есть объект.
Объект, который где-то в хипе MT наряду с окошками, потоками и кнопкой "закрыть".
Отсюда и двойственная мораль, отсюда и ряд рестрикшенов MQL, которые не позволяют работать по реальным указателям, адресам памяти, хукам, прививкам всяких вин калбэков.
Мое мнение, зря вообще ребята разрешили dll импорт. Теперь это наверняка самый больной зуб. С одной стороны MQL программеры просят больше полномочий, а с другой стороны сам терминал должен оставаться монолитным продуктом. А не вафлей на растерзание разнообразными модами и патчами от народных самописцев.