Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
В данном случае речь идет о банальном копировании элементов массива :)
Нет, bstone, это не банальное копирование - и Вы это точно должны понимать: сам массив оказывается и источником для копирования, и объектом модификации. Какое ж это копирование?! При таком "копировании" можно было бы не делать детей, а превращаться в них самим...Не понимаю, откуда такая мощная оппозиция? :) Речь ведь идет о маленьком глюке в функции ArrayCopy(). Я всего лишь просил обратить на него внимание и исправить. Сделать это проще простого - достаточно всего лишь проверить условие пересечения диапазонов в случае с одним и тем же массивом в качестве источника и приемника данных и копировать данные в соответствущем "безопасном" для данных направлении (в прямом или обратном порядке).
Язык MQL4 ориентирован явно на специфичную аудиторию - на трейдеров, желающим тем или иным образом механизировать торговлю. Соответственно и акцент в строгости описания языка смещен больше в сторону трейдерских задач, а описание языка не может быть таким же строгим, как это специфицировано в ANSI-стандарте С++.
Именно в большом количестве трейдерских задач возникают подзадачи накопления и обработки данных в разной форме, в том числе и задачи вставки/удаления элементов внутри массива. Например при управлении состоянием ордеров, когда ордера исполняются и уходят из очереди обработки. Ну и много других простых трейдерских алгоритмов могут нуждаться в такой возможности. И вопрос я этот, собственно, поднял не потому, что хотел тут померяться силами с кем-нибудь в программистских способностях, а потому что увидел возможность немного улучшить MQL именно для тех, кто не занимается разработкой внешних DLL-к для своих МТС, а пишет на MQL.