Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.06.24;
Скачать: CL | DM;

Вниз

Удаление из Tlist   Найти похожие ветки 

 
Ezorcist   (2007-05-30 17:11) [0]

если создать item в списке:

list.add(@obj);

то как ее потм удалить? можно перебрать все элементы списка и найти тот который =@obj, или может быть можно как-то запомнить эту item которая была создана? (или есть способ еще проще?) :-)


 
clickmaker ©   (2007-05-30 17:12) [1]

IndexOf()?


 
Ezorcist   (2007-05-30 18:41) [2]

Это вернет номер итэма по содержимому? интересно как это реализовано, и не будет ли работать так же долго как перебор?


 
Плохиш ©   (2007-05-30 18:43) [3]


> Ezorcist   (30.05.07 18:41) [2]

Это и есть перебор.


 
Ezorcist   (2007-05-30 18:59) [4]

а можно быстрее?) просто никак не пойму можно ли запомниться итэм? а потом что-то типа PointerToItem.Delete; ? хотя итем и так поинтер?


 
Anatoly Podgoretsky ©   (2007-05-30 19:33) [5]

> Ezorcist  (30.05.2007 18:59:04)  [4]

Зачем тогда нужен TList вообще, запоминай сам указатель


 
Ezorcist   (2007-05-30 20:05) [6]

есть группа tobj если они все в листе то к ним удобно обращаться, но когда tobj понимает, что ему пора удаляться, он должен удалить и себя из этого списка. так вот если бы можно было дать tobj как поле ссылку на элемент списка, то тогда он быстро этот элемент удалил.

можно и через IndexOf но тогда при быстром появлении и удалении tobj -ов начинает тормозить.


 
ЮЮ ©   (2007-05-31 03:29) [7]

Delete в списке всё равно удаляет по индексу, а не по ссылке по итем, так что наличие ссылки не спасёт.

Как решение:
 1) вместо TList - TObjectList, созданный Create(true)
 2) нкаких но когда tobj понимает, что ему пора удаляться, удалять объект должен кто-то другой, причем именно из списка, экземпляр при этом будет уничтожен TObjectList-ом.



Страницы: 1 вся ветка

Текущий архив: 2007.06.24;
Скачать: CL | DM;

Наверх




Память: 0.45 MB
Время: 0.038 c
15-1180429999
Gydvin
2007-05-29 13:13
2007.06.24
С Новосибирска люди есть?


11-1163236954
Vladimir Kladov
2006-11-11 12:22
2007.06.24
Версия 2.42


2-1180782287
зыбыл ник%)
2007-06-02 15:04
2007.06.24
Анимация сворачивания в Висте


2-1178607605
Pi314159265358979
2007-05-08 11:00
2007.06.24
Вид файлов в FileListBox


2-1179891332
Galiaf
2007-05-23 07:35
2007.06.24
Совместимость





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский