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

Вниз

Удаление элемента из динамического массива   Найти похожие ветки 

 
Zergling   (2002-10-30 14:12) [0]

Всем привет! Можно ли удалить отдельный элемент (не обнулить)из динамического массива. Например:

SetLength(M,3);

M[0]:=1;
M[1]:=25; // Этот элемент стал ненужен
M[2]:=35;

Что первое мне пришло в голову: знчение из конца массива поменять местами с удляемым значением значением (25 меняется мествами с 35), а зтем изменить длину массива с помощью SetLength(M,2); Для обработки большого массива такие перестановки могут занять много времени. Перестновки элементов в массиве так же не желательны т.к. значение в массиве бутет связанно с индексом Items в TListBox (следовательно придется делать перестановки Items в TListBox). Может как то можно удалить ненужный элемент массива без использования SetLength(M,2) или посоветуйте альтернативу динамическому массиву. У меня в массиве претпологается хранить запись Record. Ну, а если сооброржений по этому поводу у уважаемых мастеров не найдется придется мне повозится с SetLength.

Заранее всем благодрен


 
Андрей Прокофьев ©   (2002-10-30 14:14) [1]

Может, воспользоваться TList для хранения списка структур?


 
Андрей Прокофьев ©   (2002-10-30 14:23) [2]

Или в items.Objects вашего TListBox"а держать указатели на
records


 
F1 ©   (2002-10-30 14:26) [3]

а что если
ListBox1.Items.Objects
использовать для указателей на твои структуры???
Есть и такое
ListBox1.Items.AddObject();



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

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

Наверх




Память: 0.47 MB
Время: 0.014 c
3-33886
NeyroSpace
2002-10-22 16:50
2002.11.11
Как триггером прочитать из поля Blob sub_type 1 в VarChar()


14-34189
Ricks
2002-10-21 17:52
2002.11.11
Все-таки Delphi лучше


1-34101
Sergy
2002-10-31 15:22
2002.11.11
Динамический массив. Найти индекс по значению


3-33890
Fad
2002-10-22 14:11
2002.11.11
Ошибка в БД. Borland TUtility не помогает.


4-34301
Beginer1
2002-10-01 18:46
2002.11.11
КАК СГЕНЕРИРОВАТЬ