![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
А что, пузырьковая сортировка это STL подобно? Вот бы я такое отмочил, вот бы тут было... Но членам клуба можно? Да?
STL подобно - имеется в виду интерфейс, не 100%, конечно. Ну и пузырьковой уже нет, хотя использовал именно её (массив был не слишком большим), но раз опубликовал, то решил заменить более оптимальным алгоритмом.
оказывается, что можно даже так:
и не будет никакой неопределённости. Я не знал что так можно, в плюсах ошибка. Ну и х.з. насколько можно полагаться на это ...Нет, нельзя. Попробуйте передать туда переменную
Кушает, без ошибок.
Кушает, без ошибок.
С чего это вдруг. Никогда не кушало.
p.s. А, не, я чуток перепутал, там const не кушает:
оказывается, что можно даже так:
и не будет никакой неопределённости. Я не знал что так можно, в плюсах ошибка. Ну и х.з. насколько можно полагаться на это ...Формально там нет неопределённости, потому что число 5 нельзя передать ссылке:
Но это не значит что все нормально. Например это:
компилируется без ошибок. Неоднократно обращал на это внимание Разработчиков, но все по прежнему. И это при том что MQL позиционируется как более строгий язык, заботящийся о пользователях (избыточные предупреждения и т.п.)
А что, пузырьковая сортировка это STL подобно? Вот бы я такое отмочил, вот бы тут было... Но членам клуба можно? Да?
в курсе как расшифровывается STL? нет? так погугли.
Да, членам клуба имеющих мозг можно, а вот у тебя отмочить вряд ли получится ))
Контейнер для любого типа данных можно реализовать стандартными средствами MQL (с помощью шаблонов) без применения макросов.
можно-то оно можно, вопрос какого качества и с какими допущениями.
например я хочу контейнер какой-нибудь структуры встроенного типа. а у нее (тадам!!) запрещено копирование и нельзя использовать указатели.
Так для классов, структур и указательной будет проверяться наличие реализованных операторов сравнения и равенства, а так же функций Equals, Compare.
как? насколько я помню sfinae в mql нету, а реализация через интерфейсы требует множественного наследования.
например я хочу контейнер какой-нибудь структуры встроенного типа. а у нее (тадам!!) запрещено копирование и нельзя использовать указатели.
Вроде, разрешено.
Вроде, разрешено.
может доделали, я на такое натыкался
со структурами есть еще одна проблема - из-за отсутствия ссылок и указателей нельзя изменить элемент структуры в контейнере извне.
Например это:
компилируется без ошибок. Неоднократно обращал на это внимание Разработчиков, но все по прежнему. И это при том что MQL позиционируется как более строгий язык, заботящийся о пользователях (избыточные предупреждения и т.п.)
А зачем обращать внимание разработчиков? Разве это может причинить какие-то проблемы? Если в коде имеется такая перегрузка, то очевидно обе функции имеют идентичный смысл, и сделаны для гибкости. Зачем обрезать такую возможность? Занудства ради? В MQL и так слишком мало гибкости и простора для манёвра.
Кстати насчёт "более строгого языка, заботящегося о пользователях" - это очень спорно :) Чего стоит например такое:
Мне лично все равно что там написано в библиотеке. Главное чтоб работала правильно и быстро. Я не так часто и много пишу коды, чтобы самому писать себе библиотеки. А разобраться как пользоваться ну на мой взгляд гораздо проще, чем самому придумывать их.
Вообщем больше библиотек хороших и разных!