Новая версия платформы MetaTrader 5 build 2940: Перенос витрин MQL5-сервисов в рабочую область и обновление дизайна - страница 21
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Приведенный пример как раз является плохим кодом. Правильнее все это разруливать через switch, в котором перечислены именованные константы, но ни в коем случае не значения.
Портянки кода писать - наверное, это хороший стиль.
Портянки кода писать - наверное, это хороший стиль.
Дело ведь не в длине кода, а в его удобном чтении и поддержке. Короткий код - не значит хороший, равно как и длинный код не означает, что он плох.
А вот по замечанию насчет set-файлов соглашусь. Но только в том ключе, что MQ выбрали неправильный путь в сохранении значений перечислений. Для универсализма стоило бы переводить их в строки. Тогда бы никаких проблем не возникло при изменении значений констант.
Вполне себе годный путь - просто в input нужно использовать пользовательские (а не предопределенные) перечисления - тем более что им можно дать более осмысленные имена (тем более для маркета)
Вполне себе годный путь - просто в input нужно использовать пользовательские (а не предопределенные) перечисления - тем более что им можно дать более осмысленные для маркета имена
Нет разницы между пользовательским и системным перечислением. И там, и там могут произойти переназначения. Снова получаем нерабочий set-файл.
Нет разницы между пользовательским и системным перечислением. И там, и там могут произойти переназначения. Снова получаем нерабочий set-файл.
Разница существенная: значения пользовательских перечислений зависят только (и только) от Вас, а предопределенных - от Разработчиков
Если в input параметрах Вы используете только пользовательские перечисления, то от Разработчиков - не зависите
Тем более что при этом:
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Новая версия платформы MetaTrader 5 build 2940: Перенос витрин MQL5-сервисов в рабочую область и обновление дизайна
Ihor Herasko, 2021.06.14 20:19
Для универсализма стоило бы переводить их в строки
затруднительно реализовать обратный перевод - из строки в значение
Перечисления в языке удобны только для написания перегрузок и шаблонов (template). В остальных случаях макросы являются их полной альтернативой.
Looking for a list of the shortcuts of the terminal (and the editor to be complete) I searched in the (Engl.) reference of the terminal, in the documentation, and with the MQ-search for "shortcut" and "hot key" - nothing.
Does anybody know where I can find it or does someone has one?
At least it is something to improve the documentation with.
Ищу список горячих клавиш терминала (и редактора, чтобы быть полным) Я искал в (англ.) справочнике терминала, в документации, и с MQ-поиском для " shortcut " и " hot key " - ничего.
Кто-нибудь знает, где я могу найти это или у кого-то есть?
По крайней мере, это то, с чем можно улучшить документацию.
Ищу список горячих клавиш терминала (и редактора, чтобы быть полным) Я искал в (англ.) справочнике терминала, в документации, и с MQ-поиском для " shortcut " и " hot key " - ничего.
MetaEditor
https://www.metatrader5.com/ru/metaeditor/help/workspace/hotkeys
Разница существенная: значения пользовательских перечислений зависят только (и только) от Вас, а предопределенных - от Разработчиков
set-файл, сохраненный пользователем, кроме этого пользователя, никто не может контролировать.
Перечисления - это не что-то статичное, которое один раз сделал и забыл. Это развивающиеся сущности. Иначе приходим к тому, что смысла в них нет. Тогда, действительно, проще оперировать явно указанными числами.