![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 11.01.2010
Сообщений: 21
|
![]()
Есть массив объектов некоторого класса. в этом массиве , допустим третий элемент перестал быть нужен. как от него избавиться?
(поимённая передача всех параметров последнего в списке объекта третьему возможным не представляется - слишком много всего) Как бы это сделал профи? |
![]() |
![]() |
![]() |
#2 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
Delete работает и с массивами.
Цитата:
![]() Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 11.01.2010
Сообщений: 21
|
![]()
Ладна, ребят, прошу прощения. Скажу иначе
OB1:= TOb.Create; OB2:= OB1; OB1:=nil как обойти механизм уничтожения объекта? Последний раз редактировалось _bAd_; 19.01.2010 в 20:11. |
![]() |
![]() |
![]() |
#4 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
Delete,Copy,Insert все три работают и с массивами(о чем гласит и подсказка о параметрах)
на крайняк можно и через CopyMemory сделать ![]() а с TList работать как и обычно...создаем динамически структуру...и записываем в TList указатель на нее. а обратно читаем указатель и работаем с ним(не забываем приводить типы) я часто юзаю TList чтоб хранить структуры...(точнее я храню обьекты классов), но я делаю класс, который содержит в себе TList. вот пример из моего кода: Код:
Цитата:
у вас обьект 1 не уничтожается, а он передается обьекту 2. тут лучше всего вспомнить что обьект в Делфи это указатель на его данные.тогда становится все понятно ![]() Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. Последний раз редактировалось Пепел Феникса; 19.01.2010 в 20:21. |
|
![]() |
![]() |
![]() |
#5 |
Заблокирован
Регистрация: 14.01.2010
Сообщений: 92
|
![]()
> Как бы это сделал профи?
Профи при прочих равных условиях не стал бы страдать ерундой с массивом. Профи знает о существовании стандартного списочно-ориентированного класса TObjectList, избавляющего от необходимости явного разрушения объекта, фигурирующего в составе элементов этого списка. |
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 11.01.2010
Сообщений: 21
|
![]()
Злые вы.
Но спасибки. Ответ не получил, но можно хоть дальше двигаться. С ТЛистом. (не люблю работать с тем , чьи кишки не знаю как работают. В частности иногда было бы неплохо создать объект, описанный локально. И глобально помнить только указатель на него. И чтоб этот указатель продолжал указывать куда надо после выхода из процедуры) Последний раз редактировалось _bAd_; 19.01.2010 в 22:00. |
![]() |
![]() |
![]() |
#7 |
Заблокирован
Регистрация: 14.01.2010
Сообщений: 92
|
![]()
> Ответ не получил
Как это не получил ? Ты не веришь в существование волшебного TObjectList, который пользуют профи, которыми ты так интересовался ?) Tак жми же скорей F1 ! И да будет блажен уверовавший)) |
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 11.01.2010
Сообщений: 21
|
![]()
О в это трудно не поверить. Но еще трудней смириться.
|
![]() |
![]() |
![]() |
#9 |
Заблокирован
Регистрация: 14.01.2010
Сообщений: 92
|
![]()
> еще трудней смириться
С чем ?) С тем что , в отличие от TList, при использовании его специально "заточенного" наследника TObjectList отпадает необходимость явного разрушения объектов-элементов списка ?) |
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 11.01.2010
Сообщений: 21
|
![]()
ну раз такой флейм пошел: с тем, что я не знаю как оно работает.
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вставка объектов | KinderX | Microsoft Office Excel | 5 | 22.09.2009 05:13 |
массив объектов | balamut | JavaScript, Ajax | 4 | 29.05.2009 14:49 |
Присваивание объектов | Stalevar | Общие вопросы Delphi | 0 | 17.02.2009 19:06 |
массив объектов с конструктором копии | pu4koff | Общие вопросы C/C++ | 6 | 18.06.2008 17:33 |
Конструктор объектов | Yoger | Общие вопросы Delphi | 10 | 20.04.2007 12:45 |