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

Вниз

Dynamic array: добавление и удаление элементов массива?   Найти похожие ветки 

 
sea   (2003-04-08 15:30) [0]

Добрый день. После объявления динамического массива, выделяем память - SetLenght(A,50). В процессе работы требуется добавить элемент к массиву А, или удалить элемент из массива. Какими командами это можно сделать? (А добавляется (удаляется) к концу массива?). И есть ли такой оператор, чтобы добавлял (удалял) элемент в нужную позицию (например в 21 ячейку), а старые значения автоматически сдвигал (с 21 в 22, с 22 в 23 ... с 50 в 51)?
Заранее благодарен.


 
Ricks ©   (2003-04-08 15:35) [1]

Нет, таких операций, вроде, нет.
Добавляются и удаляются элементы тем же SetLength, а сдвигать прийдеться ручками


 
Skier ©   (2003-04-08 15:38) [2]

>sea

> И есть ли такой оператор, чтобы добавлял (удалял) элемент
> в нужную позицию (например в 21 ячейку), а старые значения
> автоматически сдвигал (с 21 в 22, с 22 в 23 ... с 50 в 51)?

Нет.
1) Или используй Move(...)
2) Или переходи на список TList


 
MityaP ©   (2003-04-08 16:07) [3]

Да напиши пару функций (AddToArray, InsertToArray, MoveInArray, DeleteInArray) один раз и не парься - на всю жизнь хватит... Там писать-то пару минут...


 
paxer   (2003-04-08 18:39) [4]

MityaP просвети, как можно написать эти процедуры (AddToArray, InsertToArray, MoveInArray, DeleteInArray) - на всю жизнь?
Для массивов разного типа?


 
MityaP ©   (2003-04-08 19:37) [5]

Легко...
Например:

type
TArrayObjects: array of TObjects;
TArrayStrings: array of string;
TArrayPointers: array of pointer;
TArrayFloat: array of Extended;
и т.д.


procedure AddToArray(AArray: TArrayObjects, AValue: TObjects); overload;
procedure AddToArray(AArray: TArrayStrings, AValue: string); overload;
procedure AddToArray(AArray: TArrayPointers, AValue: pointer); overload;
procedure AddToArray(AArray: TArrayFloat, AValue: Extended); overload;

и т.д.




 
MityaP ©   (2003-04-08 19:38) [6]

А скопировать процедуру - пару мгновений... Токо типы поменять... в оглавлении..


 
sts   (2003-04-08 20:30) [7]

где вы, где, темплэйты ... 8)



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

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

Наверх




Память: 0.48 MB
Время: 0.02 c
1-67353
MystiX
2003-04-09 16:17
2003.04.21
Прозрачность формы


11-67193
Doctor Deejay
2002-07-13 10:54
2003.04.21
Когда будет открыт раздел с компонентами КОЛ на мастаке?


3-67161
Proxvost
2003-04-03 12:06
2003.04.21
Adotable + DbGridEh


14-67541
iZEN
2003-04-04 16:31
2003.04.21
В Sun считают, что .NET - это шутка


7-67566
coder-lamer
2003-02-05 17:42
2003.04.21
CD-Writer