powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Прерывание если в массиве TList один из обьектов по определённому индексу заменяется
13 сообщений из 13, страница 1 из 1
Прерывание если в массиве TList один из обьектов по определённому индексу заменяется
    #40086249
hlopotun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго времени дня,

в TList в каком то месте кода по определённому индексу обьект перестаёт существовать/возможно удаляется (но не заменяется на nil, Assigned продолжает возвращать True). Надо отловить в каком месте кода это происходит. Какой алгоритм выставления прерывания на такое событие?
Это будет прерывание адреса или данных? Поясните пожалуйста порядок действий.

Спасибо
...
Рейтинг: 0 / 0
Прерывание если в массиве TList один из обьектов по определённому индексу заменяется
    #40086258
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Установить бряку в деструктор объекта.
...
Рейтинг: 0 / 0
Прерывание если в массиве TList один из обьектов по определённому индексу заменяется
    #40086260
hlopotun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DimaBr
Установить бряку в деструктор объекта.

слишком много надо будет проходить деструкторов т.к. в TList много однотипных обьектов
...
Рейтинг: 0 / 0
Прерывание если в массиве TList один из обьектов по определённому индексу заменяется
    #40086266
hlopotun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
опять же, обьект может существовать дальше. Заменится может только ссылка по индексу TList.
...
Рейтинг: 0 / 0
Прерывание если в массиве TList один из обьектов по определённому индексу заменяется
    #40086268
asviridenkov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
data breakpoint. Только надо заранее большой capacity выставить
...
Рейтинг: 0 / 0
Прерывание если в массиве TList один из обьектов по определённому индексу заменяется
    #40086279
Фотография Virtual Student
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Предлагаю простой вариант.
Сделать свой TList с заменой GetIetm и SetItem на свои, с вызовом нужных событий.
...
Рейтинг: 0 / 0
Прерывание если в массиве TList один из обьектов по определённому индексу заменяется
    #40086282
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добавь в деструктор объекта код самостоятельно себя удаляющий из листа.
...
Рейтинг: 0 / 0
Прерывание если в массиве TList один из обьектов по определённому индексу заменяется
    #40086285
Фотография Кроик Семён
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hlopotun,

если объекты есть производные от TComponent, то можно подписаться на Notification (например, на рассылку можно подписать объект, владеющий списком TList) И при добавлении очередного объекта в список подписываться на рассылку. Тогда при сообщении "Operation = opRemove" можно будет узнать, что некий объект AObject был уничтожен
...
Рейтинг: 0 / 0
Прерывание если в массиве TList один из обьектов по определённому индексу заменяется
    #40086301
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hlopotun
в TList много однотипных обьектов
Использовать деструктор родителя?
...
Рейтинг: 0 / 0
Прерывание если в массиве TList один из обьектов по определённому индексу заменяется
    #40086332
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hlopotun
Всем доброго времени дня,

в TList в каком то месте кода по определённому индексу обьект перестаёт существовать/возможно удаляется (но не заменяется на nil, Assigned продолжает возвращать True). Надо отловить в каком месте кода это происходит...


Зачем надо отловить? Допустим, отловил, что планируется сделать после этого?
...
Рейтинг: 0 / 0
Прерывание если в массиве TList один из обьектов по определённому индексу заменяется
    #40086359
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Похоже, таки тролль.
...
Рейтинг: 0 / 0
Прерывание если в массиве TList один из обьектов по определённому индексу заменяется
    #40086364
hlopotun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
YuRock
Похоже, таки тролль.

На работе не вмегда есть время быть в форуме.
Прерывание на изменение данных по адресу помогло. Объект уничтожался 2 раза, из разных фоеймворков. Один для рарадокса, другой для firebird. Отдал разработчикаи фреймворков на правку.
...
Рейтинг: 0 / 0
Прерывание если в массиве TList один из обьектов по определённому индексу заменяется
    #40086368
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hlopotun
YuRock
Похоже, таки тролль.

На работе не вмегда есть время быть в форуме.
Прерывание на изменение данных по адресу помогло. Объект уничтожался 2 раза, из разных фоеймворков. Один для рарадокса, другой для firebird. Отдал разработчикаи фреймворков на правку.
Прекрасно.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Прерывание если в массиве TList один из обьектов по определённому индексу заменяется
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]