Есть ли ограничение по количеству передаваемых параметров при вызове iCustom - страница 2

 
Vladimir Kazakov:

Справочник MQL5 -> Основы языка -> Функции -> второй абзац))

Спасибо. 
 
-Aleks-:

Тогда индикатор будет неудобно использовать руками... впрочем, зависит от интерфейса настроек индикатора.

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

 
Dmitry Fedoseev:

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

Нормальное рабочее решение, если исходник индикатора есть.

И совсем не обязательно в строку передавать все параметры, можно только недостающие.

Это решение позволяет спокойно и оптимизировать параметры.

Но когда есть исходник и индикатора и советника, то можно просто комбинировать нужный набор параметров и не связываться с формированием/чтением строки.

А вот когда исходника индикатора нет, то задача не решается вообще.

 
Dmitry Fedoseev:

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

Да, на мой взгляд, сейчас это самый оптимальный вариант, но и у строки есть свои ограничения. Как раз ситуация и возникла с одним из продуктов для которого у пользователя соответственно нет открытого кода, но с ним удалось обойтись 59 параметрами вместо 66, убрав "строкое описание" между параметрами.
 
Sergey Efimenko:
Да, на мой взгляд, сейчас это самый оптимальный вариант, но и у строки есть свои ограничения. Как раз ситуация и возникла с одним из продуктов для которого у пользователя соответственно нет открытого кода, но с ним удалось обойтись 59 параметрами вместо 66, убрав "строкое описание" между параметрами.
Чтобы убрать "строковое описание" как раз нужен исходник - разве нет? Вероятно речь о промежуточном индикаторе-"обёртке"?
 
Stanislav Korotky:
Чтобы убрать "строковое описание" как раз нужен исходник - разве нет? Вероятно речь о промежуточном индикаторе-"обёртке"?
Нет, у меня как раз есть исходник, исходника нет у конечного пользователя, и ему понадобилось обращение через iCustom, а я при создании описаний делал упор на удобность интерфейса описания/разделения параметров и как-то не считал их количество, пока не столкнулся с выше описанным ограничением.
 
Dmitry Fedoseev:

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

Я так же подумал, по началу, но потом... как Вы собираетесь в вызове через iCustom пропустить часть параметров, ведь последними являются сдвиг и буфер?
 
-Aleks-:
Я так же подумал, по началу, но потом... как Вы собираетесь в вызове через iCustom пропустить часть параметров, ведь последними являются сдвиг и буфер
Подумайте еще. Если не поможет, потом расскажу.
 
Dmitry Fedoseev:
Подумайте еще
Нет у меня такого богатого опыта, как у Вас, готов услышать мудрое решенье.
 
Dmitry Fedoseev:

Можно сделать первый параметр строковый, для передачи всех параметров, а следом обычные параметры в любом количестве.

А размер строки разве не ограничен?