Главная страница
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.022 c
1-78434
brestmarket
2002-10-11 14:52
2002.10.24
Вопрос к мерчендайзерам шаровара!?


7-78697
ed30
2002-08-15 10:48
2002.10.24
Зависание приложения


1-78347
AL2002
2002-10-14 14:57
2002.10.24
RichEdit.SelAttributes


1-78399
Abajun
2002-10-15 12:30
2002.10.24
ошибка


1-78465
Sego
2002-10-12 18:54
2002.10.24
TreeView