Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.017 c
14-34240
X@o$
2002-10-21 10:59
2002.11.11
Памажите !!!


14-34177
MBo
2002-10-21 12:55
2002.11.11
Длинный гудок на маме - что значит?


4-34299
Демонов Е.В.
2002-09-30 14:44
2002.11.11
Bitmap ! ! !


1-34089
DVM
2002-10-31 09:06
2002.11.11
Глюк: самопроизвольно исчезают элементы управления


6-34140
Жорик
2002-09-13 15:22
2002.11.11
Нажатие кнопки внутри TWEBbrowser




   Наверх