Главная страница
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.017 c
1-78422
User0
2002-10-15 15:42
2002.10.24
Почему в Delphi работает а в C++ нет ?


6-78560
Andre V.
2002-08-15 09:57
2002.10.24
Wake-On-LAN?


1-78413
Дмитрий К.К.
2002-10-15 12:14
2002.10.24
External exception


1-78428
Chinas
2002-10-14 11:35
2002.10.24
Форма из DLL, как правильно закрыть?


3-78210
surkis
2002-10-04 11:58
2002.10.24
Помогите с плиз Access-овским паролем