Всем доброго!
Столкнулся с проблемой, решение которой до конца не удалось добиться.
Есть такой код:
Этот код из справки, чуть расширим его:
казалось бы какие проблемы могут быть возникнуть, так и есть ранее году так в 2015 этот когда работал без особых проблема, сейчас же, происходит частичное удаление объектов по выборке.
Понятно что выбранный цикл for не годиться, так как изначально был не верен по своей логике, удивительно что этот пример все еще есть в официальной справке. Почему неверен, да потому, что как только вы удалите хотя бы один объект то общее количество на чарте измениться, а следовательно индекс ссылки будет неверен, что и происходит на текущий момент, скорее всего разработчики поняли ошибку, но вот как нам теперь корректно удалять объекты?
Есть решения?
Так в цикле уже давно не удаляют, используйте
ObjectsDeleteAll(...);
Так в цикле уже давно не удаляют, используйте
Да, решение было бы хорошим, при условии что на чарте кроме моего индикатора не будет других индикаторов, я хочу удалить только свои объекты. Есть еще какое либо решение?
int ObjectsDeleteAll( long chart_id, // идентификатор графика const string prefix, // префикс имени объекта int sub_window=EMPTY, // индекс окна int object_type=EMPTY // тип объекта для удаления );Вот это вроде как подходит, если я правильно понимаю prefix это часть имени объекта.
Вроде работает, надо посмотреть как будет себя вести в купе с другими индикаторами. Спасибо за подсказку.
Вроде работает, надо посмотреть как будет себя вести в купе с другими индикаторами. Спасибо за подсказку.
приличные программисты в обьектах совего советника/индикатора ставят уникальный префикс, как раз для таких случаев )
приличные программисты в обьектах совего советника/индикатора ставят уникальный префикс, как раз для таких случаев )
Не знал, о существовании приличных программистов, спасибо за новость! День прожит не зря!
Вот это вроде как подходит, если я правильно понимаю prefix это часть имени объекта.
Да, так и есть. Задайте "правильное" имя объекта и проблем не будет, например: "имя программы" + "ID чарта" + "индекс объекта" , красным выделе префикс.
Да, так и есть. Задайте "правильное" имя объекта и проблем не будет, например: "имя программы" + "ID чарта" + "индекс объекта" , красным выделе префикс.
:), ок. Как бы иначе и не делал, но все равно спасибо!
Да, так и есть. Задайте "правильное" имя объекта и проблем не будет, например: "имя программы" + "ID чарта" + "индекс объекта" , красным выделе префикс.
"ID чарта" то зачем? это лишнее.
:), ок. Как бы иначе и не делал, но все равно спасибо!
Как все уже понимают, пример к контекстной справке не является правильным и только вводит в заблуждение, пример либо надо исправить, либо просто убрать из справки.
"ID чарта" то зачем? это лишнее.
Это как пример, думаю у каждого свой подход к уникальности имен объекта. У меня свой.

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Всем доброго!
Столкнулся с проблемой, решение которой до конца не удалось добиться.
Есть такой код:
Этот код из справки, чуть расширим его:
казалось бы какие проблемы могут возникнуть, так и есть ранее году так в 2015 этот код работал без особых проблема, сейчас же, происходит частичное удаление объектов по выборке.
Понятно что выбранный цикл for не годиться, так как изначально был не верен по своей логике, удивительно что этот пример все еще есть в официальной справке. Почему неверен, да потому, что как только вы удалите хотя бы один объект то общее количество на чарте измениться, а следовательно индекс ссылки будет неверен, что и происходит на текущий момент, скорее всего разработчики поняли ошибку, но вот как нам теперь корректно удалять объекты?
Есть решения?