Меня уже давно раздражет отсутствие указателей на массивы.
Ну, свой массив можно обернуть в класс. Но массивы, переданные в OnCalculate() - в класс не обернешь. Приходится либо "тащить через все вызовы функций", либо на входе копировать себе, и потом пользоваться указателем на класс...
Я уже предлагал - если никак нельзя ввести указатели на массив, надо ввести функцию OnCalculate(), которая бы получала указатели на классы таймсерий из Стандартной Библиотеки. Чтобы эти указатели можно было сохранить, и потом использовать, не передавая весь массив.
Меня уже давно раздражет отсутствие указателей на массивы.
Ну, свой массив можно обернуть в класс. Но массивы, переданные в OnCalculate() - в класс не обернешь. Приходится либо "тащить через все вызовы функций", либо на входе копировать себе, и потом пользоваться указателем на класс...
Я уже предлагал - если никак нельзя ввести указатели на массив, надо ввести функцию OnCalculate(), которая бы получала указатели на классы таймсерий из Стандартной Библиотеки. Чтобы эти указатели можно было сохранить, и потом использовать, не передавая весь массив.
Спасибо!
Понятно, я просто не мог себе поверить, что этот а-ля MQL5 компилятор так бестолково спроектирован!
Присоединяюсь к вашей идее насчёт библиотеки, и мне кажется, что можно ещё иначе сделать:
передавать все указатели в виде одной структуры, тогда надо будет тащить через все вызовы функций только один аргумент,
а это уже не так противно и не придётся столько плеваться!
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Здравствуйте!
Индикатор получает на входе стандартный набор аргументов:
Ещё в индикаторе есть класс, который содержит много функций ~20, которые вызывают друг друга последовательно: одна функция вызывает следующую итд.
Только последняя функция работает с аргументами переданными в
OnCalculate
Как можно передать ей эти аргументы чтобы не тащить их через все вызовы функций?
(Не хочется раздувать объём кода в несколько раз)