![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Я тут изменил код ув. Svinozavr'ом :
И результат принтуется тот же, что и при варианте:
Странно. Вроде как изначально было установлено индексирование массива в обратном направлении. Далее войдя в цикл, опять же устанавливается индексирование в другом направлении, ресайз и снова индексирование в другом направлении.
Меня заинтересовало, зачем зайдя в цикл перед ресайзом устанавливать индексирование?
По ходу, если не установить, то по сколько до цикла было индексирование, то те элементы массива, которые уже переиндексированы будут иметь соответствующий индекс, а новые, в данном случает, 0-ой бар, не будет переиндексирован, т.к. его на момент предыдущей переиндексации не было, так?
Я тут изменил код ув. Svinozavr'ом :
И результат принтуется тот же, что и при варианте:
Странно. Вроде как изначально было установлено индексирование массива в обратном направлении. Далее войдя в цикл, опять же устанавливается индексирование в другом направлении, ресайз и снова индексирование в другом направлении.
Меня заинтересовало, зачем зайдя в цикл перед ресайзом устанавливать индексирование?
По ходу, если не установить, то по сколько до цикла было индексирование, то те элементы массива, которые уже переиндексированы будут иметь соответствующий индекс, а новые, в данном случает, 0-ой бар, не будет переиндексирован, т.к. его на момент предыдущей переиндексации не было, так?
При ресайзе series-массива новый элемент добавится в тот конец, где индекс size-1. Нам же нужно, чтобы новый элемент добавился с индексом 0. Поэтому сначала устанавливаем нормальный порядок индексирования, потом ресайзим, потом возвращаем порядок индексирования взад.