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

Вниз

Как нетопорно удалить элемент <b>динамического массива</b>   Найти похожие ветки 

 
garyboy   (2002-10-12 18:37) [0]

Как не топорным способом удалить элемент динамического массива
Топорный т.е. сместить часть массива ,справа от него лежащую , на его место Вроде не топорно объяснил:) Буду очень благодарен , если кто подскажет и пришлет еще какие нибудь интересные сведения о работе с Динамическими массивами


 
Anatoly Podgoretsky ©   (2002-10-12 18:54) [1]

Для удаления чего либо из середины протяженных объектов, используется следующий метод, сначала хвост смещается в позицию удалемого элемента (тов) затем хвост отрубается


 
Anatoly P   (2002-10-12 18:55) [2]

Он это назвал топорным способом


 
Anatoly Podgoretsky ©   (2002-10-12 19:02) [3]

Предложи, тот который, не топорный по твоему мнению


 
Anatoly P   (2002-10-12 19:07) [4]

Хотел бы узнать, но пока пользуюсь именно этим способом.


 
Юрий Зотов ©   (2002-10-12 23:13) [5]

MoveMemory + SetLength.

Не знаю, топорно это или нет, но укладывается в две простые строчки. И по скорости, думаю, вариант тоже не самый худший. В целом же, если сравнивать по соотношению простота-эффективность, то не исключено, что даже лучший.


 
Anatoly P   (2002-10-12 23:20) [6]

Вспомнил - еще можно удаляемый элемент поменять местами с последним и укоротить массив на 1 (т.е. SetLength)


 
Юрий Зотов ©   (2002-10-12 23:38) [7]

> Anatoly P (12.10.02 23:20)

Нарушается порядок следования элементов, что не всегда допустимо. И потом, зачем менять, если достаточно просто присвоить? Небольшая, но тоже экономия.


 
Anatoly Podgoretsky ©   (2002-10-12 23:41) [8]

Как ни крути ничего не топорно для протяженных объектов не придумано, только смещение и отрубание



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

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

Наверх




Память: 0.48 MB
Время: 0.023 c
3-78291
Allo
2002-10-03 14:48
2002.10.24
InterBase 7.0 Setup


14-78651
Yuriy-Master
2002-10-04 14:12
2002.10.24
Menu with vertical image - how to do it


1-78320
Valeris
2002-10-14 12:11
2002.10.24
Помогите новичку


1-78440
Новенький в Делфи
2002-10-15 15:30
2002.10.24
вопросы по хукам


4-78708
GarryFV
2002-09-11 11:57
2002.10.24
Список приложений под любой виндой